Answers

Question and Answer:

  Home  Oracle Database

⟩ How To Assign Data of the Deleted Row to Variables?

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.

 215 views

More Questions for you: