首页 > 代码库 > SQL 存储过程中in

SQL 存储过程中in

存储过程中用in,如果将条件(1,2,3)这样的集合当成参数传进来的话是不能执行的,因为集合转成一个变量是出错

解决办法拼接SQL字符串传进来,后者在存过中拼接字符串都可以如:

ALTER PROCEDURE [dbo].[db_MoveArticleByClassId]  @SqlString varchar(4000)ASBEGIN  BEGIN TRAN -- 显示定义并开始一个事务SET XACT_ABORT ON -- 表示遇到错误立即回滚exec(UPDATE db_article +@SqlString+AND a_id = 23) IF @@error <> 0  --发生错误BEGIN   ROLLBACK TRANSACTION   RETURN 0ENDELSEBEGIN   COMMIT TRANSACTION   RETURN 1    --执行成功END  END
View Code

 

SQL 存储过程中in