我创建了一个简单的SQL数据库,它有一个表tblCustomerInformation
和三列:
- 名字,
- 姓氏,
- 和电子邮件。
我试图更新它,但是当我运行下面列出的代码时,程序什么也不做。
它不会崩溃,给予我错误,它只是什么也不做。
我相当肯定我的UPDATE
语句是正确的,但我不确定为什么它现在不起作用。
using (SqlConnection Connection = new SqlConnection(@"Data Source=EWOODWARD-PC\SQL2012; Initial Catalog=CustomerGUI; Integrated Security=True"))
{
using (SqlCommand cmd = Connection.CreateCommand())
{
cmd.CommandText = "UPDATE tblCustomerInformation SET LastName = @ln, Email = @em WHERE (FirstName = @fn)";
//cmd.Parameters.Add("@ln", SqlDbType.NVarChar);
//cmd.Parameters["@ln"].Value = txtLastName.Text;
//cmd.Parameters.Add("@em", SqlDbType.NVarChar);
//cmd.Parameters["@em"].Value = txtEmail.Text;
//cmd.Parameters.Add("@fn", SqlDbType.NVarChar);
//cmd.Parameters["@fn"].Value = txtFirstName.Text;
cmd.Parameters.AddWithValue("@ln", txtLastName.Text);
cmd.Parameters.AddWithValue("@fn", txtFirstName.Text);
cmd.Parameters.AddWithValue("@em", txtEmail.Text);
Connection.Open();
cmd.ExecuteNonQuery();
}
}
1条答案
按热度按时间ee7vknir1#
使用此函数,
cmd.Parameters...
代码的排列不应混乱,应基于查询中的排列。曾经遇到过这种错误。