请教,简单的存储过程运行出错
CREATE proc test
@newsnum varchar(20),
@indextype varchar(20)
as
declare @sql varchar(100)
set @sql = 'select top ' + @newsnum + ' * from news where newstype = ( ' + @indextype + ') and tag=checked order by id desc '
EXEC(@sql)
GO
检查语法的时候,提示语法检查成功,但是运行的时候总是提示
服务器: 消息 207,级别 16,状态 3,行 1
列名 '政策法规 ' 无效。
服务器: 消息 207,级别 16,状态 1,行 1
列名 'checked ' 无效。
我是这样执行的:Exec test '10 ', '政策法规 '
[解决办法]
set @sql = 'select top ' + @newsnum + ' * from news where newstype = ( ' ' ' + @indextype + ' ' ') and tag= ' 'checked ' ' order by id desc '