SQL>
SQL> create or replace type address_type
2 as object
3 ( city varchar2(30),
4 street varchar2(30),
5 state varchar2(2),
6 zip number
7 )
8 /
Type created.
SQL> create or replace type person_type
2 as object
3 ( name varchar2(30),
4 dob date,
5 home_address address_type,
6 work_address address_type
7 )
8 /
Type created.
SQL>
SQL>
SQL> create table people1 of person_type
2 /
Table created.
SQL>
SQL>
SQL> insert into people1 values ( 'Tom', '15-mar-1965',
2 address_type( 'R', '123 Main Street', 'Va', '45678' ),
3 address_type( 'R', '1 Oracle Way', 'Ca', '23456' ) );
1 row created.
SQL>
SQL> select * from people1;
NAME DOB
-------------------- --------------------
HOME_ADDRESS(CITY, STREET, STATE, ZIP)
------------------------------------------------------------------------------------------------------------------------------------------------------
WORK_ADDRESS(CITY, STREET, STATE, ZIP)
------------------------------------------------------------------------------------------------------------------------------------------------------
Tom 15-MAR-1965 00:00:00
ADDRESS_TYPE('R', '123 Main Street', 'Va', 45678)
ADDRESS_TYPE('R', '1 Oracle Way', 'Ca', 23456)
1 row selected.
SQL>
SQL> drop table people1;
Table dropped.
SQL> drop type person_type;
Type dropped.
SQL> drop type address_type;
Type dropped.
SQL> --
|