exec('SELECT * FROM DB_User_Learn WHERE UserID LIKE '+@U+' OR UserID IN ('+@UserID+')')
上面这样的一句语言 我对 @U 传的值是 %0019% @UserID 为 空字符串运行的时候提示 0019附近有语法错误,请高手指点下要怎么改,谢谢了
上面这样的一句语言 我对 @U 传的值是 %0019% @UserID 为 空字符串运行的时候提示 0019附近有语法错误,请高手指点下要怎么改,谢谢了
解决方案 »
- 最简单的连接SQL2000错误!气死我了
- 新手讨教:日期判断问题? (今天已提过问,但条件没说全。现再次请教)
- sqlserver2005一口气插入大量数据后,该表查询慢,启动也慢的现象
- 难倒了两个高手!2003标准版系统上安装sqlserver2000企业版,java访问失败
- 求助考勤管理SQL
- SQL SERVER LOG SHIP 的维护问题
- Sql Server2000中,如何在非首条语句创建分区视图?项目急用!
- sql server可以创建临时表,据说是加#,那么表什么时候释放呀,
- 一个很棘手的问题,大家多帮忙!!!不甚感激!!!
- 请教各位!!如何将一些特殊字符存入sql表,?
- 自己写了一个存储过程,为什么insert into dbo.TB_InventoryInfo(CommodityID,WarehouseID,Quantity,
- EXCEL连接SQLSERVER的安全性问题
if(@UserID != "")
sql += " or UserID IN ("+@UserID+")";注:@U 只需要传具体值就可以了,两个百分号已放入SQL中;也可以用你之前的
like中改成 LIKE '%" + @U+ "%'",是字符串类型要加引号!!!
,不加的结果会是SELECT * FROM DB_User_Learn WHERE UserID LIKE %0019%,实则应该是SELECT * FROM DB_User_Learn WHERE UserID LIKE '%0019%'
set @sql = @sql + case when @UserID='' then '' else ' OR UserID IN ('+@UserID+')' endexec(@sql)