Mega Code Archive

 
Categories / Oracle PLSQL Tutorial / Object Oriented
 

Using UPDATE with TYPEed Columns

To use UPDATE, the alias must also be used: SQL> SQL> CREATE OR REPLACE TYPE ADDRESS_OBJ as OBJECT(   2  street VARCHAR2(20),   3  city VARCHAR2(20),   4  state CHAR(2),   5  zip CHAR(5))   6  / Type created. SQL> SQL> CREATE TABLE emp (   2  empno NUMBER(3),   3  name VARCHAR2(20),   4  address ADDRESS_OBJ)   5  / Table created. SQL> SQL> INSERT INTO emp VALUES (101, 'A',ADDRESS_OBJ('1 St.','M','AL','36608')); 1 row created. SQL> SQL> select * from emp;      EMPNO NAME                 ADDRESS(STREET, CITY, STATE, ZIP) ---------- -------------------- --------------------------------------------------        101 A                    ADDRESS_OBJ('1 St.', 'M', 'AL', '36608') SQL> SQL> UPDATE emp e   2  SET e.address.zip = '34210'   3  WHERE e.address.city LIKE 'A%'   4 SQL> select * from emp;      EMPNO NAME                 ADDRESS(STREET, CITY, STATE, ZIP) ---------- -------------------- --------------------------------------------------        101 A                    ADDRESS_OBJ('1 St.', 'M', 'AL', '36608') SQL> SQL> drop table emp; Table dropped. SQL> drop type ADDRESS_OBJ; Type dropped. SQL>