Mega Code Archive

 
Categories / Oracle PLSQL Tutorial / Conversion Functions
 

Cast table of numbers

SQL>  create table num_tab (col1 number(10)); Table created. SQL> SQL> CREATE OR REPLACE TYPE numberTableType AS TABLE OF NUMBER(10);   2  / Type created. SQL> SQL> CREATE TABLE address_list (list_id VARCHAR2(6)PRIMARY KEY,   2                   home_addresses numberTableType )   3                   NESTED TABLE home_addresses STORE AS home_addreses_tab; SQL> SQL> INSERT INTO address_list VALUES ('H101',numberTableType(1001,1002,1003,1004)); SQL> SQL> declare   2    v_numberVarryType numberTableType := numberTableType(NULL,NULL,NULL);   3  begin   4    v_numberVarryType(1):=1001;   5    v_numberVarryType(2):=1002;   6    v_numberVarryType(3):=1003;   7    insert into num_tab select column_value from TABLE(CAST(v_numberVarryType AS numberTableType));   8  end;   9  / PL/SQL procedure successfully completed. SQL> SQL> select * from num_tab;   COL1 ------   1001   1002   1003 3 rows selected. SQL> SQL> drop table num_tab; Table dropped. SQL> SQL> drop table address_list; SQL>