题
如果某个条件成立,我需要在没有错误的情况下退出SQL脚本。我读过1个解决方案是 raiseerror
使用错误代码20+和 with log
范围。但是,这样做的限制是,我只能作为管理员执行该执行,并且与DB的连接将被中止。
另外,我尝试使用goto并跳到标题末尾,但是它不起作用,因为我在脚本中间有多个操作。还有另一个解决方案吗?
IF <some condition>
BEGIN
GOTO Finished;
END
GO
Finished:
SELECT 'Done'
谢谢!
解决方案
goto
无法跳过 go
. 。您必须在每个块中重新测试条件:
IF NOT <some condition>
BEGIN
...
END
GO
IF NOT <some condition>
BEGIN
...
END
GO
IF NOT <some condition>
...
不隶属于 StackOverflow