如何在SQL SERVER 2005存储过程中,使用循环语句
复制代码 代码如下:
CREAT PROCEDURE tester
AS
BEgin
SET NOCOUNT ON;
DECLARE @userId vArchar(50)
DECLARE @count int
SET @count = 0
SELECT @count = count(*) From UserService_User WHERE Account like '%111%'
WHILE @count >
0
BEGIN
SELECT @userId = Id From UserService_User WHERE Account like '%111%'
exec UserService_RemoveUserByUserId @userId
SET @count = @count -1
END
END
说明:
1、此存储过程在SQL SERVER 2005上测试通过,值得注意的是,循环体中,语句是使用BEGIN……END包括的,而不是网络上常说的WHILE ……END WHILE结构,其他的循环语句,如LOOP ……UNTIL……END LOOP也不能通过编译,也许是版本的问题,但在SQL SERVER2005中,循环体使用BEGIN……END就可以,而不能使用网络上常说的WHILE ……END WHILE结构。
2、循环体中 UserService_RemoveUserByUserId 是一个存储过程的名称,@userId为该存储过程的参数,如果有多个参数,使用“,”分开就可以了,这也是存储过程调用另一个存储过程的一种方法。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 如何在SQL SERVER 2005存储过程中,使用循环语句
本文地址: https://pptw.com/jishu/632146.html