0
我有一個簡單的表格上的數據更新如下代碼:動態更新SQL查詢不變量工作
protected void BUpdate_Click(object sender, EventArgs e)
{
i = Convert.ToInt32(Sid.Text);
comm = "UPDATE tblStaff SET Name = @sname, Gender = @sex, Phone = @phone, Address = @address, Position = @position, Salary = @salary WHERE (ID = @id)";
cmd = new SqlCommand(comm, cn);
cmd.Parameters.AddWithValue("@id", i);
cmd.Parameters.AddWithValue("@sname", Sname.Text);
cmd.Parameters.AddWithValue("@sex", DropDownList1.Text);
cmd.Parameters.AddWithValue("@position", Sposition.Text);
cmd.Parameters.AddWithValue("@salary", Ssalary.Text);
cmd.Parameters.AddWithValue("@address", Saddress.Text);
cmd.Parameters.AddWithValue("@phone", Sphone.Text);
r = cmd.ExecuteNonQuery();
if (r > 0)
{
ClientScript.RegisterStartupScript(Page.GetType(), "validation", "<script language='javascript'>alert('Success')</script>");
}
else
{
ClientScript.RegisterStartupScript(Page.GetType(), "validation", "<script language='javascript'>alert('Failed')</script>");
}
}
當我代替「i」的:
cmd.Parameters.AddWithValue("@id", i);
代碼完美運行,但是當我使用變量時,它會引發錯誤。
我已經嘗試使用Sid.Text
和Convert.toInt32(Sid.text)
來代替「我」,但都沒有工作。
請幫忙。
你應該閱讀這篇文章。 http://blogs.msmvps.com/jcoehoorn/blog/2014/05/12/can-we-stop-using-addwithvalue-already/ –