我有一个关于使用SqlParameter
带班更新一个问题...更新数据
在我的课堂EditRecord
:
string strScript = "";
strScript = strScript + "UPDATE tbMemberInfo(FirstName,LastName,Age)";
strScript = strScript + "SET (FirstName = @firstname, LastName = @lastname, Age = @age)";
strScript = strScript + "WHERE [email protected]";
SqlCommand cmd;
cmd = new SqlCommand(strScript, Connection);
cmd.CommandTimeout = 0;
cmd.Parameters.AddWithValue("@firstname", _members.Lastname));
cmd.Parameters.AddWithValue("@lastname", _members.FirstName));
cmd.Parameters.AddWithValue("@age", _members.Age));
cmd.Parameters.AddWithValue("@empID", _members.ID));
cmd.ExecuteNonQuery();
调用类的在我的表格
Class.clsMemberInfo member = new Class.clsMemberInfo();
member.FirstName = txtFirstName.Text;
member.Lastname = txtLastName.Text;
member.Age = Convert.ToInt32(txtAge.Text);
clsMembers memberInfo = new clsMembers();
memberInfo.Members = member;
memberInfo.EditREcord(cnTestConnection);
MessageBox.Show("Success");
但数据没有更新
您的查询似乎已关闭。每个字符串后需要一个空格。所以:''更新tbMemberInfo(名字,姓氏,年龄)“'另外,确保你已经打开了一个连接 – RandomStranger
你的sql可能因为在年龄之间而不高兴),并且设置没有空间,就像@age和哪里。 – BugFinder
调试您的代码,在执行它之前获取sql脚本字符串,然后在Sql Server上运行它。你不会感到惊讶,相信我。 – Badiparmagi