SQL>
SQL> create or replace type myScalarType as object( x int, y date, z varchar2(25) );
2 /
Type created.
SQL>
SQL> create or replace type myArrayType as varray(25) of myScalarType
2 /
Type created.
SQL>
SQL> create or replace type myTableType as table of myScalarType
2 /
Type created.
SQL>
SQL> create table t(a int,b myArrayType,c myTableType)nested table c store as c_tbl
2 /
Table created.
SQL>
SQL> insert into t values ( 1,
2 myArrayType( myScalarType( 2, sysdate, 'hello' ) ),
3 myTableType( myScalarType( 3, sysdate, 'GoodBye' ) )
4 );
1 row created.
SQL> drop table t;
Table dropped.
SQL> drop type myTableType;
Type dropped.
SQL> drop type myArrayType;
Type dropped.
SQL> drop type myScalarType;
Type dropped.