How to do a bulk collect into a nested table. : Table of Type « PL SQL « Oracle PL / SQL






How to do a bulk collect into a nested table.

   
SQL> SET ECHO ON
SQL> SET SERVEROUTPUT ON SIZE 1000000
SQL>
SQL>
SQL> -- Create a table for the example.
SQL> CREATE TABLE myTable
  2  (id                NUMBER              NOT NULL
  3  ,CONSTRAINT id_pk  PRIMARY KEY (id));

Table created.

SQL>
SQL>
SQL> 
SQL> DECLARE
  2    TYPE number_table IS TABLE OF myTable.id%TYPE;
  3
  4    number_list NUMBER_TABLE := number_table();
  5
  6  BEGIN
  7
  8    
  9    number_list.EXTEND(10000);
 10
 11    
 12    FOR i IN 1..10000 LOOP
 13
 14      
 15      number_list(i) := i;
 16
 17    END LOOP;
 18
 19    
 20    FORALL i IN 1..number_list.COUNT
 21      INSERT INTO myTable VALUES (number_list(i));
 22  END;
 23  /

PL/SQL procedure successfully completed.

SQL>
SQL> drop table myTable;

Table dropped.

   
    
    
  








Related examples in the same category

1.Create a function to convert string type variable to date type variable
2.Fetch a bulk into a table structure
3.Define a nested table type for each column
4.Extend once, outside the loop for better performance
5.A package to manage a list of employees
6.Fill table of custom type and use it in for loop to insert
7.Table of custome type indexed by BINARY_INTEGER
8.Reference type attribute through index
9.Use for loop to fill a table collection
10.Select bulk collect into
11.Use for loop to insert value to table collection and then use table collection in another insert statement
12.The EXISTS Table Attribute
13.FIRST & LAST Table Attributes
14.NEXT & PRIOR Table Attributes
15.Uses the COUNT method to display the number of rows contained in a table collection
16.How to do a bulk collect into an associative array
17.Table collection indexed by column type