参考:SQL Server
我有一个带有while循环的存储过程,我想在每500个循环后打印一些消息.
所以,我写了 -
CREATE spxxx
AS
BEGIN
BEGIN TRAN
DECLARE @counter = 0;
WHILE <somecondition>
SET @counter = @counter + 1;
IF @counter % 50 = 0
BEGIN
PRINT @counter;
END
END
COMMIT TRAN
END -- End spxxx
Run Code Online (Sandbox Code Playgroud)
但它会在proc结束后打印所有消息.我希望它在运行时打印消息.
gbn*_*gbn 28
我相信你可以使用RAISERROR ...... NOWAIT
如果使用严重性10,则不是错误.这也提供了一些方便的格式,例如%s,%i,你也可以使用状态来跟踪你的位置.