如何循环执行存储过程? 进来看问题描述:)

Hunts 2008-06-27 04:19:52
删除评论的存储过程 dbo.Comment_Delete 参数为 CommentID
存储过程中执行一些比较复杂的操作。

有个UserComment表 UserID, CommentID

现在我要删除某个用户的所有评论,怎么做?
...全文
81 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
hanjs 2008-06-27
  • 打赏
  • 举报
回复
DELETE UserComment WHERE UserID=@UserID

没有必要用游标吧
flairsky 2008-06-27
  • 打赏
  • 举报
回复
你这个需求用游标好实现

如果一定要while也可以,多一个临时结果集表
Hunts 2008-06-27
  • 打赏
  • 举报
回复
// 楼上的,我就是这个意思啦,哈哈。
有没有更方便的做法呢?
Garnett_KG 2008-06-27
  • 打赏
  • 举报
回复

用cursor 吧。。



DECLARE rsDel CURSOR FOR
SELECT CommentID FROM UserComment WHERE UseriD=@用户
OPEN rsDel

DECLARE @CID INT
FETH NEXT FROM rsDel INTO @CID
WHILE @@FETCH_STATUS=0
BEGIN
EXEC dbo.Comment_Delete @CID
FETCH NEXT FROM rsDel INTO @cid

END

CLOSE rsDel
DEALLOCATE rsDel
正宗老冉 2008-06-27
  • 打赏
  • 举报
回复
DELETE UserComment WHERE UserID=@UserID
liangCK 2008-06-27
  • 打赏
  • 举报
回复
delete from xx where xx=xx

34,594

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧