`
suizhikuo
  • 浏览: 27280 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

很奇怪的一个问题,是关于sql参数化和传where in 参数的迷惑.请大伙给讲讲吧...小弟很迷糊现在. ,拉兄弟一把!!

阅读更多

报错的语句: strSql.Append(" AND cu.CurrentSalesMan in (@CurrentSalesMans)");

db.AddParameter("@CurrentSalesMans", GetCommaPartionUserIDs(CurrentSalesMan));

错误提示:Conversion failed when converting the nvarchar value '1,2,3,4,5,6,9,12,13,15,26,27,28,29' to data type int.

可以运行的语句: strSql.Append(" AND cu.CurrentSalesMan in (" + GetCommaPartionUserIDs(CurrentSalesMan) + ")");

cu.CurrentSalesMan 是 Int 类型.

GetCommaPartionUserIDs(CurrentSalesMan)的结果是:"1,2,3,4,5,6,9,12,13,15,26,27,28,29"

我的问题是为什么参数化的那条语句不能运行.而拼接的语句能运行呢?

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics