【问题标题】:Why does a savepoint error appear in this situation?为什么在这种情况下会出现保存点错误?
【发布时间】:2015-03-16 11:07:21
【问题描述】:

为什么在执行此块时会出现错误“ORA-01086:保存点'X'从未在此会话中建立或无效”?

begin

  savepoint X;

  execute immediate 'alter package ANY_EXISTING_PACKAGE compile';

  rollback to X;

end;

【问题讨论】:

  • 您不能使用 DDL 语句回滚到保存点。

标签: oracle plsql oracle11g transactions


【解决方案1】:

DDL 在运行前进行隐式提交,然后进行回滚或提交。因此,在尝试编译您的包后,上述示例中的保存点 X 不再适用。

见:http://docs.oracle.com/cd/E11882_01/server.112/e40540/sqllangu.htm#sthref808

【讨论】:

    猜你喜欢
    • 2011-07-05
    • 1970-01-01
    • 1970-01-01
    • 2021-08-06
    • 1970-01-01
    • 2020-07-28
    • 1970-01-01
    • 2018-04-10
    • 1970-01-01
    相关资源
    最近更新 更多