OleDbConnection vcon = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\SummerJob\DataBase.accdb");
string cmdtxt = "UPDATE Students SET S_Name = ?, S_Surname = ?, S_E-Mail = ? WHERE ID = ?";
OleDbCommand cmd = new OleDbCommand(cmdtxt, vcon);
cmd.CommandType = CommandType.Text;
cmd.Parameters.AddWithValue("S_Name", EditName.Text);
cmd.Parameters.AddWithValue("S_Surname", editSurname.Text);
cmd.Parameters.AddWithValue("S_E-Mail", editMail.Text);
vcon.Open();
cmd.ExecuteNonQuery();
vcon.Close();
//我使用此代码,但它在更新语句中显示语法错误
答案 0 :(得分:1)
最后一个参数???
在哪里ID=?
不确定,但我敢打赌,如果没有该参数,您的查询看起来不适合解析器。
答案 1 :(得分:0)
你需要传递身份证吗?通过SqlParameter像这样cmd.Parameters.AddWithValue(“ID”,Id.Text);
还要确保参数的添加顺序与
相同