我有10个脚本,每个脚本都包含自己的提交语句。我正在使用我的工具同时执行所有脚本,该工具将请求数据库连接,并读取我们的脚本并在数据库中执行。
我需要保留所有脚本中的所有commit语句,如果任何脚本中的任何语句失败,它应该回滚之前的所有语句。
发布于 2013-10-29 16:46:11
只需删除您提交的语句..和
SET AUTOCOMMIT OFF;
WHENEVER SQLERROR EXIT FAILURE ROLLBACK;
{script 1}
{script 2}
{script 3}
{script 4}
.
.
.
{script 10}
COMMIT;DDL将在成功时隐式提交。我们不为DDL发出commit。你应该有一个失败的脚本来进行手动回滚。
例如:您创建了两个表,然后进行回滚
WHENEVER SQLERROR CONTINUE;
DROP TABLE1;
DROP TABLE2;https://stackoverflow.com/questions/19653377
复制相似问题