现在的位置: 首页 > 综合 > 正文

sql 批量插入

2013年12月05日 ⁄ 综合 ⁄ 共 1125字 ⁄ 字号 评论关闭

 set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go
-- =============================================
-- Author:   <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
ALTER PROCEDURE [dbo].[ProductListUpdateSpecialList]
@SendUserID int ,
@Title varchar(50) ,
@Info varchar(500) ,
@Date datetime,
@Nature varchar(20) ,
@ReceiveUserID nvarchar(500)
AS
begin transaction
DECLARE @intlen int              --会员ID开始位置
DECLARE @intUserId int             --会员ID
DECLARE @strReceive Nvarchar(500) --剩余会员ID串
set @strReceive=@ReceiveUserID
while @strReceive !=''   --判读是否已经读取完,没完则继续插入
begin
   Set @intlen=CharIndex(',',@strReceive,0)
   if @intlen=0    --判断是否是第一个
   begin
       set @intUserId=cast(@strReceive as int) --截取接收者UserID
       set @strReceive=''
   end
   else
   begin
       set @intUserId=cast(SUBSTRING(@strReceive,0,@intlen) as int)
       set @strReceive=SUBSTRING(@strReceive,@intlen+1,len(@strReceive)-@intlen)
   end   
   INSERT INTO C_Message([SendUserID],[Title],[Info],[Date],[Nature],ReceiveUserID)
   VALUES(@SendUserID,@Title,@Info,@Date,@Nature,@intUserId)
end  
if @@error=0
begin
    commit transaction
end
else
begin
    rollback transaction
end
go

抱歉!评论已关闭.