我正在考勤系统,现在这是我的问题,我搜索了一个人的名字,并尝试登录他的出席,它首先是好的,登录后第二命名它仍然很好。但是一旦我尝试编辑第一个或第二个用户的登录出席时,我的datagridview(连接到我的数据库)中的所有值都重复了。如果我在week1中输入name1参加考试,那很好。第1周的参加者名字2仍然没问题。 但如果我编辑相同的名称。甚至去下一周的数字,所有保存的值都根据我最近输入的名称重复。对于 插入新记录在c中复制记录#
SqlConnection cnn200 = new SqlConnection(connectionstring);
string sql200 = "SELECT * FROM attendance WHERE [email protected] ";
cnn200.Open();
SqlCommand cmd200 = new SqlCommand(sql200, cnn200);
SqlDataReader rdr200;
cmd200.Parameters.AddWithValue("@csign", callsign);
rdr200 = cmd200.ExecuteReader();
if (rdr200.Read() == true)
{
SqlConnection cnn201 = new SqlConnection(connectionstring);
if (textBox89.Text == "1")
{
string sql201 = "insert INTO attendance
(csign,name,week1)" + "VALUES" + "(@csign,@name,@week1)";
cnn201.Open();
SqlCommand cmd201 = new SqlCommand(sql201, cnn201);
cmd201.Parameters.AddWithValue("@csign", callsign);
cmd201.Parameters.AddWithValue("@name", namee);
cmd201.Parameters.AddWithValue("@week1",
comboBox1.Text);
cmd201.ExecuteNonQuery();
}
if (textBox89.Text == "2")
{
string sql201 = "insert INTO attendance
(csign,name,week2)" + "VALUES" + "(@csign,@name,@week2)";
cnn201.Open();
SqlCommand cmd201 = new SqlCommand(sql201, cnn201);
cmd201.Parameters.AddWithValue("@csign", callsign);
cmd201.Parameters.AddWithValue("@name", namee);
cmd201.Parameters.AddWithValue("@week2",
comboBox1.Text);
cmd201.ExecuteNonQuery();
}
和更新
else{
SqlConnection cnn201 = new SqlConnection(connectionstring);
if (textBox89.Text == "1")
{
string sql201 = "UPDATE attendance SET
[email protected],[email protected],[email protected]";
cnn201.Open();
SqlCommand cmd201 = new SqlCommand(sql201, cnn201);
cmd201.Parameters.AddWithValue("@name", namee);
cmd201.Parameters.AddWithValue("@csign", callsign);
cmd201.Parameters.AddWithValue("@week1",
comboBox1.Text);
cmd201.ExecuteNonQuery();
}
if (textBox89.Text == "2")
{
string sql201 = "UPDATE attendance SET
[email protected],[email protected],[email protected]";
cnn201.Open();
SqlCommand cmd201 = new SqlCommand(sql201, cnn201);
cmd201.Parameters.AddWithValue("@name", namee);
cmd201.Parameters.AddWithValue("@csign", callsign);
cmd201.Parameters.AddWithValue("@week2",
comboBox1.Text);
cmd201.ExecuteNonQuery();
}`}
您需要向我们展示一些代码才能有效地提供帮助。请阅读[问]以及如何创建[mcve]。 – gravity
这是我的代码 用于更新记录 –
再次,请点击这个[编辑]链接,并添加到问题本身。 – gravity