DECLARE TYPE moj_typ_tabelowy IS TABLE Of emp%ROWTYPE NOT NULL INDEX BY BINARY_INTEGER; tab moj_typ_tabelowy; i INTEGER; CURSOR e IS SELECT * FROM emp; BEGIN i := 0; OPEN e; LOOP i := i + 2; FETCH e INTO tab(i); EXIT WHEN e%NOTFOUND; END LOOP; CLOSE e; DBMS_OUTPUT.Put_Line('Pierwszy:'|| tab.FIRST); DBMS_OUTPUT.Put_Line('ostatni:'|| tab.LAST); DBMS_OUTPUT.Put_Line('wszystkich:'|| tab.COUNT); DBMS_OUTPUT.Put_Line('nastepny po 6:'|| tab.NEXT(6)); IF tab.EXISTS(6) THEN DBMS_OUTPUT.Put_Line('6 istnieje'); ELSE DBMS_OUTPUT.Put_Line('6 nieistnieje'); END IF; tab.DELETE(6,10); DBMS_OUTPUT.Put_Line('pozostalo:'|| tab.COUNT); DBMS_OUTPUT.Put_Line('nastepny po 6:'|| tab.NEXT(6)); IF tab.EXISTS(6) THEN DBMS_OUTPUT.Put_Line('6 istnieje'); ELSE DBMS_OUTPUT.Put_Line('6 nieistnieje'); END IF; END; /