【发布时间】:2018-04-22 04:02:00
【问题描述】:
我正在尝试更新 SQL Server 数据库并有一个座位号字符串列表
string strQuery = ("Update tblTransactionItems set selected = 'T' Where SeatNumber = @SeatNumber");
using (SqlCommand cmd = new SqlCommand(strQuery, con)) {
con.Open();
foreach (var item in list) {
string test = item.ToString();
test = test.Replace('"', ' ').Trim();
cmd.Parameters.AddWithValue("@SeatNumber", test);
cmd.ExecuteNonQuery();
}
}
它一直说变量@SeatNumber 已被声明并且仅更新列表中的第一项。有什么方法可以解决这个问题?
更新:
我只是将 foreach 循环放在了 using 之外,它就可以工作了。
【问题讨论】:
-
因为您在构建字符串的 foreach 循环的每个迭代中都添加了 @seatnumber ..