Mega Code Archive

 
Categories / Oracle PLSQL / PL SQL
 

Allocate space as you increment the index

SQL> SQL> DECLARE   2       3    TYPE charArrayType IS TABLE OF VARCHAR2(5 CHAR);   4   5       6    charArray charArrayType := charArrayType();   7  BEGIN   8    FOR i IN 1..3 LOOP   9      charArray.EXTEND;  10      IF    i = 1 THEN  11        charArray(i) := 'A';  12      ELSIF i = 2 THEN  13        charArray(i) := 'B';  14      ELSIF i = 3 THEN  15        charArray(i) := 'C';  16      END IF;  17    END LOOP;  18  19    FOR i IN 1..3 LOOP  20      dbms_output.put     (i||':');  21      dbms_output.put_line(charArray(i));  22    END LOOP;  23  END;  24  / 1:A 2:B 3:C PL/SQL procedure successfully completed.