C# ASP.Net网站中的更新语句问题

C# ASP.Net网站中的更新语句问题,c#,sql,asp.net,C#,Sql,Asp.net,我正在尝试为分配创建更新语句,用户可以在其中更改其帐户信息。无论何时尝试,我都会收到一个错误,声明为“update statement中的语法错误”。我正在修改代码,以便从另一个赋值生成此语句,代码确实在该赋值中起作用,因此我确信我一定遗漏了一些小细节。下面是启动创建update语句的方法以及方法本身的按钮单击的代码 按钮点击: protected void btnConfirm_Click(object sender, EventArgs e) { bool user

我正在尝试为分配创建更新语句,用户可以在其中更改其帐户信息。无论何时尝试,我都会收到一个错误,声明为“update statement中的语法错误”。我正在修改代码,以便从另一个赋值生成此语句,代码确实在该赋值中起作用,因此我确信我一定遗漏了一些小细节。下面是启动创建update语句的方法以及方法本身的按钮单击的代码

按钮点击:

protected void btnConfirm_Click(object sender, EventArgs e)
    {

        bool userUpdateError = false;


        string tempPath = Server.MapPath("~/App_Data/Programmaholics.mdb");
        clsDataLayer myDataLayer = new clsDataLayer(tempPath);


        try
        {
            myDataLayer.UpdateUser(lblUsername.Text, lblCity.Text, lblState.Text, lblFavorite.Text, lblLeastFavorite.Text, lblDate.Text, Convert.ToInt32(UserID.Text));
        }
        catch (Exception error)
        {
            userUpdateError = true;
            string message = "Error updating user, please check form data. ";
            Master.UserFeedBack.Text = message + error.Message;
        }

        if (!userUpdateError)
        {
            Master.UserFeedBack.Text = "Customer Updated Successfully.";
        }
    }
更新方法:

 public void UpdateUser(string userName, string city, string state, string favorite, string leastFavorite, string date, int userID)
    {

        dbConnection.Open();


        string sqlStmt = "UPDATE tblUser SET Username = @user, " +
          "City = @city, " +
          "State = @state, " +
          "Favorite = @favorite, " +
          "LeastFavorite @least, " +
          "DateLast = @date " +
          "WHERE (tblUser.UserID = @id)";

        OleDbCommand dbCommand = new OleDbCommand(sqlStmt, dbConnection);


        OleDbParameter param = new OleDbParameter("@user", userName);
        dbCommand.Parameters.Add(param);

        dbCommand.Parameters.Add(new OleDbParameter("@city", city));
        dbCommand.Parameters.Add(new OleDbParameter("@state", state));
        dbCommand.Parameters.Add(new OleDbParameter("@favorite", favorite));
        dbCommand.Parameters.Add(new OleDbParameter("@least", leastFavorite));
        dbCommand.Parameters.Add(new OleDbParameter("@date", date));
        dbCommand.Parameters.Add(new OleDbParameter("@id", userID));


        dbCommand.ExecuteNonQuery();


        dbConnection.Close();
    }
将“WHERE(tblUser.UserID=@id)”更改为“WHERE UserID=@id”,因为您正在尝试更新同一个表,所以没有必要这样做

string sqlStmt = "UPDATE tblUser SET Username = @user, " +
          "City = @city, " +
          "State = @state, " +
          "Favorite = @favorite, " +
          "LeastFavorite @least, " +
          "DateLast = @date " +
          "WHERE UserID = @id";
答案是:


=
“LeastFavorite@least,”+,
中缺失,应该是
“LeastFavorite=@least,”++

“LeastFavorite@least,”+
中缺失
=
,应该是
“LeastFavorite=@least,”+
我知道它会是这样的小东西。谢谢你,先生。