Home >> FAQs/Tutorials >> Oracle Tutorials
Oracle Tutorials - Assign Data from a Deleted Row to Variables
(Continued from previous topic...)
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;
DELETE FROM emp_temp WHERE employee_id = 100;
RETURNING first_name, last_name INTO fname, lname;
DBMS_OUTPUT.PUT_LINE('Name deleted = ' || fname || ' '
-- This will not work because multiple rows deleted
-- DELETE FROM emp_temp WHERE employee_id > 100;
-- RETURNING first_name, last_name INTO fname, lname;
Name deleted = Steven King
Similar to SELECT ... INTO, RETURNING ... INTO will not work if multiple
rows are deleted.
(Continued on next topic...)
- Can DML Statements Be Used in PL/SQL?
- Can DDL Statements Be Used in PL/SQL?
- Can Variables Be Used in SQL Statements?
- What Happens If Variable Names Collide with Table/Column Names?
- How To Resolve Name Conflicts between Variables and Columns?
- How To Assign Query Results to Variables?
- Can You Assign Multiple Query Result Rows To a Variable?
- How To Invoke Built-in Functions in PL/SQL?
- How To Retrieve the Count of Updated Rows?
- What Is the Implicit Cursor?
- How To Assign Data of the Deleted Row to Variables?
- What Is a RECORD in PL/SQL?
- How To Define a Specific RECORD Type?
- How To Define a Variable of a Specific RECORD Type?
- How To Assign Values to Data Fields in RECORD Variables?
- How To Retrieve Values from Data Fields in RECORD Variables?
- How To Define a Data Field as NOT NULL?
- How To Define a RECORD Variable to Store a Table Row?
- How To Assign a Table Row to a RECORD Variable?
- How To Insert a RECORD into a Table?
- How To Update a Table Row with a RECORD?
- How To Define a Variable to Match a Table Column Data Type?