Ant*_*yrd 3 sql oracle11g windows-7 savepoints
我正在尝试在Oracle 11g中创建一个保存点.
ALTER TABLE ORDERS
DISABLE CONSTRAINT ORDERS_C_ID_FK;
DELETE FROM CUSTOMER;
SELECT * FROM CUSTOMER;
ROLLBACK;
SELECT * FROM CUSTOMER;
SAVEPOINT SAVEPOINT1;
ALTER TABLE ORDERS
DISABLE CONSTRAINT ORDERS_OS_ID_FK;
ALTER TABLE ORDER_LINE
DISABLE CONSTRAINT ORDER_LINE_O_ID_FK;
TRUNCATE TABLE CUSTOMER;
TRUNCATE TABLE ORDER_SOURCE;
TRUNCATE TABLE ORDERS;
DELETE FROM ORDERS;
ROLLBACK TO SAVEPOINT1;
Run Code Online (Sandbox Code Playgroud)
但是我一直从SQL Developer那里得到这个错误
ROLLBACK TO SAVEPOINT1错误报告:SQL错误:ORA-01086:保存点'SAVEPOINT1'从未在此会话中建立或无效01086. 00000 - "保存点'%s'从未建立"*原因:尝试回滚到保存点从未建立过.*行动:
DDL语句ALTER TABLE- TRUNCATE TABLE在这种情况下 - 在执行它们之前和之后发出隐式提交.创建保存点的事务在ALTER TABLE执行第一个语句之前结束.由于您只能回滚到当前事务中定义的保存点,因此在发出DDL语句后无法回滚到保存点.
| 归档时间: |
|
| 查看次数: |
5374 次 |
| 最近记录: |