SQL参数化查询的问题

最近碰到个问题, SQL语句中的 "... like '%@strKeyword%'"这样写查不出结果, 非的写成 "... like '%" + strKeyword + "%'"才能查出正确结果, 难道like子句不能用参数查询吗? 之前也碰到好多次, 当时都没在意, 这次刚好有空, 就研究了下, 发现并非like不能使用参数化查询, 而是之前的逻辑不对.

 

like '%'+@parm+'%'   --- 用+号表示字符串连接


like '%@strKeyword%'  --- 是查询某个字段 包含@strKeyword这个字符串

 

所以正确的写法应该是第一种, 即:

SELECT * FROM tab1 WHERE colm1 like '%'+@strKeyword+'%'

 

posted @ 2016-05-03 11:53  姑苏慕容复  阅读(348)  评论(0编辑  收藏  举报