怎样让存储过程接收多个参数??
CREATE   PROCEDURE   sp_test   @id   int   AS   select   *   from   db_test   where   id=@id 
 GO   
 这样只能接收一个id,查出一行记录 
 但是我想从另外一个表中读一个字符串,字段值形式为(1,3,5,8),然后传入存储过程中,查出   1,3,5,8   对应的数据 
 请问应该怎么做??
------解决方案--------------------declare @s varchar(1000),@s2 varchar(1000) 
 set @s2 =  '1,2,3 ' 
 set @s= 'select * from a where a.id in ( ' + @s2 +  ') ' 
 select @s 
 exec (@s)
------解决方案--------------------测试通过,因为你接收一字串,所以将@id类型变了   
 CREATE PROCEDURE sp_test @id varchar(500) AS 
 exec( 'select * from db_test where 序号 in ( '+@id+ ') ') 
 ----------------------------------------------- 
 exec sp_test   '1,3,5,8 '
------解决方案--------------------不用In來判斷,改用CharIndex   
 CREATE PROCEDURE sp_test @id Varchar(100) 
 AS  
 	select * from db_test where CharIndex( ', ' + Rtrim(id) +  ', ',  ', ' + @id +  ', ') >  0 
 GO