存储过程输入where参数问题?

sifort 2002-10-15 03:26:18

CREATE PROCEDURE sp_test
@a varchar(100)='title',
@b varchar(100)='titles',
@c varchar(100)='BU%',
AS
exec('select title_id,' + @a +' from ' + @b + ' where title_id = ' + @b )
GO
SQL出错提示:
'BU%' 附近有语法错误。
...全文
60 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
newyu1127 2002-10-15
  • 打赏
  • 举报
回复
对楼上的仁兄说的对,我没有注意到。不过你的exec('select title_id,' + @a +' from ' + @b + ' where title_id = ' + @b )还是换成我的吧。
凋零的老树 2002-10-15
  • 打赏
  • 举报
回复
去掉就好了
sifort 2002-10-15
  • 打赏
  • 举报
回复
去掉“,”也一样!
liangxuan1979 2002-10-15
  • 打赏
  • 举报
回复
你把'BU%' 後面的","去掉
newyu1127 2002-10-15
  • 打赏
  • 举报
回复
CREATE PROCEDURE sp_test
@a varchar(100)='title',
@b varchar(100)='titles',
@c varchar(100)='BU%',
AS
exec('select title_id,' + @a +' from ' + @b + ' where title_id like @c ')
GO

34,575

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧