如何在SQL SERVER 2005存储过程中,使用循环语句
如何在SQL SERVER 2005存储过程中,使用循环语句
发布时间:2016-12-28 来源:查字典编辑
摘要:复制代码代码如下:CREATPROCEDUREtesterASBEGINSETNOCOUNTON;DECLARE@userIdvarchar...

复制代码 代码如下:

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为该存储过程的参数,如果有多个参数,使用“,”分开就可以了,这也是存储过程调用另一个存储过程的一种方法。

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新mssql数据库学习
热门mssql数据库学习
编程开发子分类