
Using BULK COLLECT With the RETURNING INTO Clause
DROP TABLE emp_temp CASCADE CONSTRAINTS PURGE;
CREATE TABLE emp_temp
AS
SELECT *
FROM employees;
DECLARE
TYPE numlist IS TABLE OF employees.employee_id%TYPE;
enums NUMLIST;
TYPE namelist IS TABLE OF employees.last_name%TYPE;
names NAMELIST;
BEGIN
DELETE FROM emp_temp
WHERE department_id = 30
RETURNING employee_id,last_name BULK COLLECT INTO enums,names;
dbms_output.Put_line('Deleted '
||SQL%ROWCOUNT
||' rows:');
FOR i IN enums.FIRST.. enums.LAST LOOP
dbms_output.Put_line('Employee #'
||Enums(i)
||': '
||Names(i));
END LOOP;
END;
/
OUTPUT:-
Deleted 6 rows:
Employee #114: Raphaely
Employee #115: Khoo
Employee #116: Baida
Employee #117: Tobias
Employee #118: Himuro
Employee #119: Colmenares
PL/SQL procedure successfully completed.

0 comments:
Post a Comment