0
Ich möchte drei Variablen mit Bulk sammeln während der Schleife durch einen Cursor abrufen. Ist es möglich? Bitte beachten Sie unter Abfrage (nehmen Variablen deklariert werden)Bulk Collect in zwei oder mehr Variablen
DECLARE
CURSOR recCurosr
IS
SELECT t1.name,t2.value1, t2.value2
FROM table1 t1, table2 t2
WHERE t1.pk = t2.pk;
BEGIN
OPEN recCurosr;
LOOP
FETCH recCurosr BULK COLLECT INTO var1, var2, var3;
BEGIN
FORALL i IN 1 .. var1.count SAVE EXCEPTIONS
UPDATE table1
SET value1= var2,
WHERE value1= var3
AND pk = var1;
Ja: [siehe Dokumentation] (http://docs.oracle.com/database/121/LNPLS/tuning.htm#GUID-6E09E4FC-28C0-43C8-9E7C-A54D6398D1DE__BABJCBGD) –
Das war hilfreich. Danke – Vimal
Die Forall-Anweisung verarbeitet alle Zeilen, die von 'recCurosr' zum ersten Mal in der Schleife zurückgegeben werden. Was gibt es für den Rest der Schleife zu tun? –