ответ
У вас есть резервная копия перед удалением? ... или вы можете попробовать использовать ретроспективный кадр (SELECT AS OF)
http://docs.oracle.com/cd/E11882_01/appdev.112/e41502/adfns_flashback.htm#ADFNS01003
Надежда я правильно понял ваш вопрос.
У некоторых исследований в статье RETURNING
: https://docs.oracle.com/cd/B19306_01/appdev.102/b14261/returninginto_clause.htm
https://docs.oracle.com/cd/B19306_01/appdev.102/b14261/collections.htm#BABHDGIG
Ссылка имеет полностью функциональный пример с UPDATE
заявления. Я уверен, что если вы потратили некоторое время на это, вы можете понять, как заставить его работать с оператором DELETE
.
DECLARE
TYPE EmpRec IS RECORD (last_name employees.last_name%TYPE,
salary employees.salary%TYPE);
emp_info EmpRec;
emp_id NUMBER := 100;
BEGIN
UPDATE employees SET salary = salary * 1.1 WHERE employee_id = emp_id
RETURNING last_name, salary INTO emp_info;
DBMS_OUTPUT.PUT_LINE('Just gave a raise to ' || emp_info.last_name ||
', who now makes ' || emp_info.salary);
ROLLBACK;
END;
/
Благодаря @bassrek –
Не уверена причины downvote. Исходный запрос не слишком ясен, но когда я слышу «выборку удаленных записей», я думаю о том, какие записи были просто удалены. Для этого команда RETURNING идеально подходит для этого. – bassrek
Благодаря @Lenny Edwards –