Я изучаю Flashback Transaction Query в Oracle 12c.Я выполнил некоторые операторы DDL и DML.В конце я выполнил оператор select в представлении FLASHBACK_TRANSACTION_QUERY, чтобы увидеть значение UNDO_SQL, но оно не вернуло ни одной строки.Мне любопытно узнать, почему это не дает мне скандалов.Я исследовал и обнаружил, что сначала необходимо включить дополнительное ведение журнала (SELECT SUPPLEMENTAL_LOG_DATA_MIN FROM V$DATABASE;
).Это значение YES.
Запросы следующие: -
CREATE TABLE TestAgain
(
Fld1 VARCHAR2(3),
Fld2 NUMBER(3)
);
INSERT INTO TestAgain values ('XYZ', 1);
INSERT INTO TestAgain VALUES ('PQR', 2);
COMMIT;
DELETE FROM TestAgain;
SELECT UNDO_SQL FROM FLASHBACK_TRANSACTION_QUERY
WHERE XID = (SELECT DISTINCT(RAWTOHEX(VERSIONS_XID))
FROM TestAgain VERSIONS BETWEEN TIMESTAMP MINVALUE AND MAXVALUE);
Последний запрос не возвращает строк.Пожалуйста, помогите мне выяснить, чего мне здесь не хватает.PS: я только начинающий изучающий SQL.