Sparen Sie zeigen nie Fehler
Ich versuche, erstellen Sie einen Sicherungspunkt in 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;
Aber ich bekomme immer diese Fehler vom SQL Developer
ROLLBACK ZU SAVEPOINT1 Error report: SQL Error: ORA-01086: savepoint
'SAVEPOINT1" nie gegründet, der in dieser Sitzung oder ungültig ist
01086. 00000 - "savepoint '%s' nie hergestellt"
*Ursache: Versuchen Sie ein Rollback auf einen Punkt zu retten, wurde nicht festgestellt.
*Aktion:
Du musst angemeldet sein, um einen Kommentar abzugeben.
DDL
Anweisungen--ALTER TABLE
undTRUNCATE TABLE
in diesem Fall-Problem, die implizite commits, bevor und nachdem Sie ausgeführt werden. Die Transaktion, die der Sicherungspunkt erstellt wurde, wurde beendet, bevor die ersteALTER TABLE
- Anweisung ausgeführt wurde. Da kann man nur rollback zu einem Sicherungspunkt definiert, die in der aktuellen Transaktion, können Sie rollback bis zum savepoint nach ErteilungDDL
Aussagen.