Object Oriented Database Oracle PLSQL

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.