请问这样的一个"存储过程"该如何设计?
存储过程如下: 
 /*   将部分用户设置为离线   */ 
 ALTER   PROC   Sp_SetSomeUserToOff 
 @userids   nvarchar(4000) 
 	AS    
 UPDATE   UserInfo    
 	SET   Online   =   0,Status   =   4 
 WHERE   Usernumber   in   (@userids)     
 那么我该如何调用? 
 Sp_SetSomeUserToOff   1001,1002            --   参数太多 
 Sp_SetSomeUserToOff    '1001,1002 '      --   数据类型错误     
 该如何解决该问题? 
------解决方案--------------------ALTER PROC Sp_SetSomeUserToOff 
 @userids nvarchar(4000) 
 	AS 
 declare @str nvarchar(5000) 
 set @str =  'UPDATE UserInfo  
 		SET Online = 0,Status = 4 
 	WHERE Usernumber in ( ' + @userids +  ') ' 
 exec @str