--循环执行添加操作
declare @idx as int
While Len(@UserList) > 0
Begin
Set @idx = Charindex(',', @UserList);
--只有一条数据
If @idx = 0 and Len(@UserList) > 0
Begin
Insert Into BIS_MsgCenterInfo(ID,MsgID,UserID,[State])Values(Newid(),@ID,@UserList,0);
Break;
End
--多条数据
If @idx > 1
Begin
Insert Into BIS_MsgCenterInfo(ID,MsgID,UserID,[State]) Values(Newid(),@ID,left(@UserList, @idx - 1),0);
Set @UserList = right(@UserList, Len(@UserList) - @idx);
End
Else
Set @UserList = right(@UserList, Len(@UserList) - @idx);
End

本文介绍了一种使用T-SQL在SQL Server中批量插入数据到指定表的方法。通过循环读取用户列表,并根据逗号分隔逐条插入数据,实现了高效的数据处理流程。特别适用于需要向消息中心批量发送通知的应用场景。
445

被折叠的 条评论
为什么被折叠?



