Multilevel aggregation relationships using nested tables : Object Table « Object Oriented Database « Oracle PL / SQL






Multilevel aggregation relationships using nested tables

    
SQL>
SQL> CREATE OR REPLACE TYPE PartType AS OBJECT
  2     (PartType_id      VARCHAR2(10),
  3      description      VARCHAR2(30))
  4     /

Type created.

SQL>
SQL> CREATE OR REPLACE TYPE PartType_Table AS TABLE OF PartType
  2  /

Type created.

SQL>
SQL> CREATE OR REPLACE TYPE Hard_Disk AS OBJECT
  2     (hd_id      VARCHAR2(10),
  3      capacity   VARCHAR2(20),
  4      controller PartType_Table)
  5     /

Type created.

SQL>
SQL> CREATE OR REPLACE TYPE Hard_Disk_Table AS TABLE OF Hard_Disk
  2  /

Type created.

SQL>
SQL> CREATE TABLE PC
  2     (pc_id      VARCHAR2(10) NOT NULL,
  3      hd         Hard_Disk_Table,
  4      PRIMARY KEY (pc_id))
  5     NESTED TABLE hd STORE AS HD_tab
  6        (NESTED TABLE controller STORE AS PartType_tab);

Table created.

SQL>
SQL> drop type PartType force;

Type dropped.

SQL> drop type PartType_Table force;

Type dropped.

SQL> drop type Hard_Disk force;

Type dropped.

SQL> drop type Hard_Disk_Table force;

Type dropped.

SQL> drop table PC;

Table dropped.

   
    
    
    
  








Related examples in the same category

1.Crate table with object column
2.Use a table alias and the name of the object
3.Create table with user defined type as column
4.Create a table with user define varray as column type
5.Create a table with nested user defined type as column
6.Object table: a table of type
7.Use user-defined varray type as column type
8.Nested table
9.Create a table based on user-defined object only
10.Implementation of many to many using object references
11.Implementation of multiple inheritance relationship
12.Implementation of one to many using object references
13.Create table based on single data type
14.Create table with nested types
15.Create type and use it as table column
16.One to one using object references
17.Use user-defined type to combine query logic
18.Create a new type and add it to a table