首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

存储过程中是数组型的参数,该怎么处理

2012-03-19 
存储过程中是数组型的参数参数类型是这样的:001,002,003请问在存储过程中 如何使用这样参数如传入exec pro

存储过程中是数组型的参数
参数类型是这样的:001,002,003

请问 在存储过程中 如何使用这样参数


如传入

exec pro_test "001,002,003"

执行为select* from test where id=001 or id=002 or id=003

[解决办法]

SQL code
exec pro_test 001,002,003
[解决办法]
exec pro_test "'001','002','003'"


存储过程这样写
declare @sql nvarchar(500)
select @sql='select * from test where id in('+@param+')'
exec(@sql)
[解决办法]
改:exec pro_test '''001'',''002'',''003'''
[解决办法]
SQL code
create proc pro_test(@id varchar(200))asbegin    declare @sql varchar(800)    set @sql='select * from test where id in('+@id+')'    print @sqlendexec pro_test '001,002,003' --执行结果select * from test where id in(001,002,003)或者exec pro_test '''001'',''002'',''003''' --执行结果select * from test where id in('001','002','003') 

热点排行