Chcę wsadzić wiersz po wierszu z kursora do tablicy zagnieżdżonej i wszystko działa bez problemu.. tylko z jakiegoś powodu, nie wiem z jakiego tworzy mi się większa tablica niż ilość wierszy z kursora i pojęcia nie mam dlaczego.. jakieś zjawisko zachodzi o którym nie wiem.. skąd 6 indeksów w tablicy skoro pętla wykonuje się 3 razy.. proszę o pomoc
DECLARE
type t_nested is table of kopia.first_name%TYPE;
tab t_nested:=t_nested();
CURSOR kursor IS
SELECT first_name FROM kopia WHERE manager_id =1 ORDER BY MANAGER_ID;
idE kopia.first_name%TYPE;
counter number:=1;
BEGIN
OPEN kursor;
LOOP
FETCH kursor INTO idE;
EXIT WHEN kursor%NOTFOUND;
DBMS_OUTPUT.PUT_LINE('pętla nr:'||counter);
DBMS_OUTPUT.PUT_LINE('idemp: '||idE);
tab.extend(counter);
tab(counter):=idE;
counter:=counter+1;
END LOOP;
CLOSE kursor;
DBMS_OUTPUT.NEW_LINE;
for i in 1..tab.last loop
DBMS_OUTPUT.PUT_LINE('zmienna w tablicy:'||tab(i));
end loop;
DBMS_OUTPUT.PUT_LINE('ilość indeksów w tablicy:'||tab.count);
END;
wynik:
pętla nr:1
idemp: Stefan
pętla nr:2
idemp: Zuzanna
pętla nr:3
idemp: Edward
zmienna w tablicy:Stefan
zmienna w tablicy:Zuzanna
zmienna w tablicy:Edward
zmienna w tablicy:
zmienna w tablicy:
zmienna w tablicy:
ilość indeksów w tablicy:6