How To Assign Data of the Deleted Row to Variables?
Submitted by: AdministratorIf 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.
Submitted by: Administrator
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.
Submitted by: Administrator
Read Online Oracle Database Job Interview Questions And Answers
Top Oracle Database Questions
☺ | How To Recover a Dropped Table in Oracle? |
☺ | How To Run SQL*Plus Commands in SQL Developer? |
☺ | What Is an Oracle User Account? |
☺ | What Is Input Buffer in SQL*Plus? |
☺ | How Oracle Handles Dead Locks? |
Top DB Oracle Categories
☺ | Oracle PL-SQL Interview Questions. |
☺ | Oracle DBA Interview Questions. |
☺ | Oracle D2K Interview Questions. |
☺ | OCI Interview Questions. |
☺ | Oracle RMAN Interview Questions. |