ado.net 中参数化查询sql语句,参数附近语法错误

这个@strWhere是根据选择的条件拼接的and或or字符串,也可能为空,但是执行的时候就报错,什么原因?... 这个@strWhere是根据选择的条件拼接的and或or字符串,也可能为空,但是执行的时候就报错,什么原因? 展开
 我来答
上海漫游枪手
2014-04-02 · 超过86用户采纳过TA的回答
知道小有建树答主
回答量:231
采纳率:0%
帮助的人:242万
展开全部
exec sp_executesql N'SELECT COUNT(*) FROM T_Products where 1=1 and ProductName=@strWhere',N'@strWhere nvarchar(4000)',@strWhere=N''

@strWhere只能是单列的值,如果要绑定多条件用字符串拼接

DECLARE @sql nvarchar(4000)
DECLARE @strWhere nvarchar(4000)
SET @strWhere =N' 1=1'
SET @sql=N'SELECT COUNT(*)'
+N' FROM T_Products where '+@strWhere
EXEC sp_executesql @sql
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式