gpt4 book ai didi

sql - 停止执行sql脚本

转载 作者:行者123 更新时间:2023-12-04 19:53:39 25 4
gpt4 key购买 nike

我有一个包含许多批处理的巨大 SQL 脚本(使用 GO )。

在某些情况下,我想停止该脚本的整个执行。

我尝试使用 NOEXEC ,但我不断收到无效对象错误,因为我的脚本包括创建数据并将数据添加到新表和列。

我不想使用 RAISERROR ,有没有其他方法可以做到这一点?

最佳答案

这个问题没有好的解决方案。您可以在批处理之间共享数据的一种方法是表(持久或临时)。因此,您可以拥有一些取决于该表的某些状态或该表中特定列的值的逻辑,如下所示:

--CREATE TABLE debug(col int)
--INSERT INTO debug VALUES(1)
--DELETE FROM debug


SELECT 1
GO

SELECT 2

SELECT 3

GO

IF EXISTS(SELECT * FROM debug)
SELECT 6

GO

只需添加 IF EXISTS(SELECT * FROM debug)这一行到您要跳过的脚本中的每个地方,具体取决于表是否有一些行,这些代码块是否会执行。

关于sql - 停止执行sql脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32762977/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com