Mega Code Archive

 
Categories / Oracle PLSQL Tutorial / System Tables Data Dictionary
 

Query sys_nc_rowinfo from a table with user defined column type

SQL> SQL> create or replace type address_type as object   2    ( city    varchar2(30),   3      street  varchar2(30),   4      state   varchar2(2),   5      zip     number   6    )   7  / Type created. SQL> create or replace type person_type as object   2    ( name             varchar2(30),   3      dob              date,   4      home_address     address_type,   5      work_address     address_type   6    )   7  / Type created. SQL> create table people of person_type   2  / Table created. SQL> insert into people values ( 'Tom', '15-mar-1965',   2    address_type( 'Reston', '1 Street', 'Va', '45678' ),   3    address_type( 'Redwood', '1 Way', 'Ca', '23456' ) ); 1 row created. SQL> / 1 row created. SQL> SQL> select sys_nc_rowinfo$ from people; SYS_NC_ROWINFO$(NAME, DOB, HOME_ADDRESS(CITY, STREET, STATE, ZIP), WORK_ADDRESS(CITY, STREET, STATE, ---------------------------------------------------------------------------------------------------- PERSON_TYPE('Tom', '15-MAR-65', ADDRESS_TYPE('Reston', '1 Street', 'Va', 45678), ADDRESS_TYPE('Redwo od', '1 Way', 'Ca', 23456)) PERSON_TYPE('Tom', '15-MAR-65', ADDRESS_TYPE('Reston', '1 Street', 'Va', 45678), ADDRESS_TYPE('Redwo od', '1 Way', 'Ca', 23456)) SQL> SQL> drop table people; Table dropped. SQL> SQL> drop type person_type; Type dropped. SQL> drop type address_type; Type dropped. SQL>