当前位置: 代码迷 >> Sql Server >> Sql 写一个存储过程,该怎么处理
  详细解决方案

Sql 写一个存储过程,该怎么处理

热度:89   发布时间:2016-04-24 20:19:11.0
Sql 写一个存储过程

  update A set bo = 1 where id = 1 or id = 2 or ....
  
 id = 1 ,2,5,6..... 需要修改的 id 数是不固定的


  它的存储过程怎样写 ? 求教


  以及 exec 

 

------解决方案--------------------
create proc proc_test @ids varchar(2000)
as
set nocount on
update A set bo = 1 
where charindex(','+cast(id as varchar)+',',','+@ids+',')>0
go

--执行
declare @ids varchar(2000)
set @ids='1,2,5,6'
exec proc_test @ids

------解决方案--------------------

create proc proc_test 
@ids varchar(max)
AS
BEGIN
set @ids='update A set bo = 1 where id in ('+@ids+')'
EXEC(@ids) 
END
go
 
--执行
declare @ids varchar(max)
set @ids='1,2,5,6'
exec proc_test @ids
  相关解决方案