Mega Code Archive

 
Categories / Oracle PLSQL / PL SQL
 

Use for loop to fill a table collection

SQL> SQL> CREATE TABLE MyTable (   2    num_col    NUMBER,   3    char_col   VARCHAR2(60)   4    ); Table created. SQL> SQL> SQL> set serveroutput on format wrapped SQL> SQL> DECLARE   2    TYPE t_Numbers IS TABLE OF MyTable.num_col%TYPE;   3    TYPE t_Strings IS TABLE OF MyTable.char_col%TYPE;   4    v_Numbers t_Numbers := t_Numbers(1);   5    v_Strings t_Strings := t_Strings(1);   6   7  BEGIN   8    v_Numbers.EXTEND(1000);   9    v_Strings.EXTEND(1000);  10    FOR v_Count IN 1..1000 LOOP  11      v_Numbers(v_Count) := v_Count;  12      v_Strings(v_Count) := 'Element #' || v_Count;  13    END LOOP;  14  15  16  END;  17  / PL/SQL procedure successfully completed. SQL> SQL> drop table MyTable; Table dropped. SQL> SQL>