Fetching Bulk Data With a Cursor
DECLARE
TYPE idstab IS TABLE OF employees.employee_id%TYPE;
TYPE nametab IS TABLE OF employees.last_name%TYPE;
ids IDSTAB;
names NAMETAB;
CURSOR c1 IS
SELECT employee_id,
last_name
FROM employees
WHERE job_id = 'ST_CLERK';
BEGIN
OPEN c1;
FETCH c1 BULK COLLECT INTO ids,names;
CLOSE c1;
-- Here is where you process the elements in the collections
FOR i IN ids.FIRST.. ids.LAST LOOP
IF Ids(i) > 140 THEN
dbms_output.Put_line(Ids(i));
END IF;
END LOOP;
FOR i IN names.FIRST.. names.LAST LOOP
IF Names(i) LIKE '%Ma%' THEN
dbms_output.Put_line(Names(i));
END IF;
END LOOP;
END;
/
Output :-
141
142
143
144
Markle
Marlow
Mallin
Matos
PL/SQL procedure successfully completed.
0 comments:
Post a Comment