Basic Oracle Concepts and Programming Question: Download Oracle Database PDF

How To Assign Data of the Deleted Row to Variables?

Tweet Share WhatsApp

Answer:

If a DELETE statement is deleting a single row, you can assign column values of the deleted row to variables by using the RETURNING clause, which an extension of DELETE statements for PL/SQL. The tutorial script shows you how to do this:

CREATE TABLE emp_temp AS SELECT * FROM employees;

DECLARE
fname VARCHAR2(10);
lname VARCHAR2(10);
BEGIN
DELETE FROM emp_temp WHERE employee_id = 100;
RETURNING first_name, last_name INTO fname, lname;
DBMS_OUTPUT.PUT_LINE('Name deleted = ' || fname || ' '
|| lname);

-- This will not work because multiple rows deleted
-- DELETE FROM emp_temp WHERE employee_id > 100;
-- RETURNING first_name, last_name INTO fname, lname;
END;
/
Name deleted = Steven King

Similar to SELECT ... INTO, RETURNING ... INTO will not work if multiple rows are deleted.

Download Oracle Database PDF Read All 430 Oracle Database Questions
Previous QuestionNext Question
What Is the Implicit Cursor in Oracle?What Is a RECORD in PL/SQL?