C#参数Sql,如果给IN传参数

in不能用参数赋值
可以用charindex函数代替

SQL code
?
1
SELECT  FROM  sys_User  WHERE  charindex( ',' +rtrim(RoleID) +  ','  ,@RoleID)>0

@Role赋值 ',1,2,3,4,'

也可以这样写
SQL code
?
1
exec ( "SELECT * FROM sys_User WHERE RoleID in ('"  + @RoleID +  "')" )

@Role赋值 '1,2,3,4'

还可以用自定义split函数
SQL code
?
1
SELECT  FROM  sys_User  WHERE  RoleID  in  ( select  from  dbo.split(@RoleID, ',' ))

你可能感兴趣的:(.net,c#)