中断 SQL Server 中的 SQL 脚本执行
如果出现意外情况,大型或复杂的 SQL 脚本有时需要立即终止。 SQL Server 提供了多种方法来实现此目的。
使用raiserror
raiserror
语句通过触发严重错误突然结束脚本执行。 严重级别为 20 或更高,并结合 WITH LOG
选项是必要的:
<code class="language-sql">raiserror('Critical error encountered', 20, -1) with log</code>
此操作将关闭数据库连接,停止进一步的脚本处理。
雇用noexec
noexec
命令设置一个标志,阻止执行后续语句。 与 raiserror
不同,它不会终止连接; 仅在 noexec
停用后才恢复执行:
<code class="language-sql">print 'Initial message' go print 'Error detected; script halted!' set noexec on print 'This message will not be displayed.' go -- End of script set noexec off -- Execution resumes here</code>
重要提示:
raiserror
需要管理权限并断开数据库连接。noexec
只影响当前会话,不会断开连接。GO
批次分隔符正确运行。最佳方法取决于 SQL 脚本的具体需求和上下文。
以上是如何在进程中停止 SQL Server 脚本的执行?的详细内容。更多信息请关注PHP中文网其他相关文章!