有表T,列名为BH,该列为自动递增INT型 充当主键用 用做唯一标识
BH VALUE
1 A
2 A
3 B
4 B有SQL语句 UPDATE T SET VALUE = 'C' WHERE BH IN (2,3) 此句在查询分析器里可以通过执行
但在C#里传参数
UPDATE T SET VALUE = 'C' WHERE BH IN (@BH)
this.SQL1.Parameters.Add(new SqlParameter("@BH", SqlDbType.NVarChar, 200, "BH"))
然后给BH赋字符串S=“2,3” 却不通过 报错在将 nvarchar 值 '2,3‘转换成数据类型 int 时失败。
求解……
BH VALUE
1 A
2 A
3 B
4 B有SQL语句 UPDATE T SET VALUE = 'C' WHERE BH IN (2,3) 此句在查询分析器里可以通过执行
但在C#里传参数
UPDATE T SET VALUE = 'C' WHERE BH IN (@BH)
this.SQL1.Parameters.Add(new SqlParameter("@BH", SqlDbType.NVarChar, 200, "BH"))
然后给BH赋字符串S=“2,3” 却不通过 报错在将 nvarchar 值 '2,3‘转换成数据类型 int 时失败。
求解……
*****************************************************************************
欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) http://feiyun0112.cnblogs.com/
string BH="2,3";
UPDATE T SET VALUE = 'C' WHERE BH IN (@BH)
this.SQL1.Parameters.Add(new SqlParameter("@BH", SqlDbType.NVarChar, 200, BH));