是否有一种方法可以立即停止SQL服务器中SQL脚本的执行,如“break”或“exit”命令?
我有一个脚本,它在开始插入之前执行一些验证和查找,我希望它在任何验证或查找失败时停止。
是否有一种方法可以立即停止SQL服务器中SQL脚本的执行,如“break”或“exit”命令?
我有一个脚本,它在开始插入之前执行一些验证和查找,我希望它在任何验证或查找失败时停止。
当前回答
您可以将SQL语句包装在WHILE循环中,并在需要时使用BREAK
WHILE 1 = 1
BEGIN
-- Do work here
-- If you need to stop execution then use a BREAK
BREAK; --Make sure to have this break at the end to prevent infinite loop
END
其他回答
您可以将SQL语句包装在WHILE循环中,并在需要时使用BREAK
WHILE 1 = 1
BEGIN
-- Do work here
-- If you need to stop execution then use a BREAK
BREAK; --Make sure to have this break at the end to prevent infinite loop
END
只需使用RETURN(它可以在存储过程内部和外部工作)。
这就是我的解决方案:
...
BEGIN
raiserror('Invalid database', 15, 10)
rollback transaction
return
END
你可以使用GOTO语句。试试这个。这对你很有用。
WHILE(@N <= @Count)
BEGIN
GOTO FinalStateMent;
END
FinalStatement:
Select @CoumnName from TableName
在过去,我们使用了以下语句:效果最好:
RAISERROR ('Error! Connection dead', 20, 127) WITH LOG