更新语句中的语法错误 - C#

本文关键字:错误 语法 语句 更新 | 更新日期: 2023-09-27 18:35:24

我一直在尝试从GRIDVIEW将数据更新到MSACCESS数据库。但是在执行执行非查询语句时,我收到一个错误,即更新语句中的语法错误。请帮帮我....我的问题可能与几个人发布的问题相似..但是我的代码段与其他代码不同。请快速回复...在下面的代码中,这是一行 cmd.ExecuteNonQuery();我收到错误的地方...请。。请帮助我

protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
    OleDbConnection con = new OleDbConnection(constr);
    con.Open();    
    string name = GridView1.DataKeys[e.RowIndex].Values["SName"].ToString();
    TextBox day = (TextBox)GridView1.Rows[e.RowIndex].FindControl("TextBox1");
    string com = "update enroll set Day = '?' where SName = '?'";
    OleDbCommand cmd = new OleDbCommand(com, con);
    cmd.Parameters.AddWithValue("@Day", day.Text.ToString());
    cmd.Parameters.AddWithValue("@SName", name.ToString());
    cmd.ExecuteNonQuery();
    con.Close();
    Label3.ForeColor = Color.Green;
    Label3.Text = name + " Details Updated successfully";
    GridView1.EditIndex = -1;
}

更新语句中的语法错误 - C#

更改string com = "update enroll set Day = '?' where SName = '?'";

string com = "update enroll set Day = ? where SName = ?";

由于您在?之前和之后都有引号,因此不会将其视为参数