Mega Code Archive

 
Categories / Oracle PLSQL Tutorial / Object Oriented
 

Insert data into table with inheritecd columns

SQL> SQL> CREATE Or Replace TYPE AddressType AS OBJECT (   2    street VARCHAR2(15),   3    city   VARCHAR2(15),   4    state  CHAR(2),   5    zip    VARCHAR2(5)   6  )   7  / Type created. SQL> SQL> CREATE Or Replace TYPE PersonType AS OBJECT (   2    id         NUMBER,   3    first_name VARCHAR2(10),   4    last_name  VARCHAR2(10),   5    dob        DATE,   6    phone      VARCHAR2(12),   7    address    AddressType   8  ) NOT FINAL;   9  / Type created. SQL> SQL> CREATE Or replace TYPE business_PersonType UNDER PersonType (   2    title   VARCHAR2(20),   3    company VARCHAR2(20)   4  )   5  / Type created. SQL> SQL> CREATE TABLE object_business_customers OF business_PersonType   2  / Table created. SQL> SQL> INSERT INTO object_business_customers VALUES (   2    business_PersonType(1, 'John', 'Brown', '01-FEB-1933', '800-555-3333',   3      AddressType('2 Ave', 'town', 'MA', '12345'),'Manager', 'XYZ Corp')   4  ); 1 row created. SQL> SQL> SELECT *   2  FROM object_business_customers;  ID FIRST_NAME           LAST_NAME            DOB       PHONE --- -------------------- -------------------- --------- ------------ ADDRESS(STREET, CITY, STATE, ZIP) -------------------------------------------------------------------- TITLE                COMPANY -------------------- --------------------   1 John                 Brown                01-FEB-33 800-555-3333 ADDRESSTYPE('2 Ave', 'town', 'MA', '12345') Manager              XYZ Corp SQL> SQL> drop table object_business_customers; Table dropped. SQL> SQL> drop type business_PersonType; Type dropped. SQL> SQL> drop type persontype; Type dropped. SQL> SQL> drop type addresstype; Type dropped. SQL>