【发布时间】:2016-11-24 14:22:46
【问题描述】:
我需要更新表中的一个字段,其中 id 等于用户选择的值。我有接受和拒绝按钮,当我按下接受时,它会在表格中添加“是”,而当我按下拒绝时会添加“否”。我的查询似乎有问题。 这是我的代码:
protected void AcceptButton_Click(object sender, EventArgs e)
{
string accepted = "YES";
SqlCommand cmd = new SqlCommand("UPDATE Journey SET AcceptedJourney = @Accept WHERE JourneyId = '"+AcceptJourney.SelectedValue+"')");
cmd.Connection = connection;
cmd.Parameters.AddWithValue("@Accept", accepted);
connection.Open();
cmd.ExecuteNonQuery();
connection.Close();
Response.Redirect("~/Account/PassengerDashboard.aspx");
}
我得到的错误是
System.Data.dll 中出现“System.Data.SqlClient.SqlException”类型的异常,但未在用户代码中处理 附加信息:')' 附近的语法不正确。
【问题讨论】:
-
您的查询有什么问题?编辑:您的查询末尾有一个
)。 -
我收到错误 ')' 附近的语法不正确。
-
你为什么使用参数Accept而不是JourneyId?它是不一致的,可能会让您对 SQL 注入持开放态度。
-
把
WHERE JourneyId改成WHERE (JourneyId -
我只查找具有 JourneyId 的条目,例如在 AcceptedJourney.selectedvalue 中选择的用户