SQL>
SQL> create or replace type Address_Type
2 as object
3 ( street_addr1 varchar2(25),
4 street_addr2 varchar2(25),
5 city varchar2(30),
6 state varchar2(2),
7 zip_code number
8 )
9 /
SQL>
SQL> alter type Address_Type
2 REPLACE
3 as object
4 ( street_addr1 varchar2(25),
5 street_addr2 varchar2(25),
6 city varchar2(30),
7 state varchar2(2),
8 zip_code number,
9 member function toString return varchar2,
10 map member function mapping_function return varchar2
11 )
12 /
Type altered.
SQL>
SQL> create or replace type body Address_Type
2 as
3 member function toString return varchar2
4 is
5 begin
6 if ( street_addr2 is not NULL )
7 then
8 return street_addr1 || ' ' ||
9 street_addr2 || ' ' ||
10 city || ', ' || state || ' ' || zip_code;
11 else
12 return street_addr1 || ' ' ||
13 city || ', ' || state || ' ' || zip_code;
14 end if;
15 end;
16
17 map member function mapping_function return varchar2
18 is
19 begin
20 return to_char( nvl(zip_code,0), 'fm00000' ) ||
21 lpad( nvl(city,' '), 30 ) ||
22 lpad( nvl(street_addr1,' '), 25 ) ||
23 lpad( nvl(street_addr2,' '), 25 );
24 end;
25 end;
26 /
Type body created.
SQL> create table people
2 ( name varchar2(10),
3 home_address address_type,
4 work_address address_type
5 )
6 /
SQL> create or replace type Address_Array_Type as varray(50) of Address_Type
2 /
SQL> alter table people add previous_addresses Address_Array_Type
2 /
SQL>
SQL> select object_type, object_name, decode(status,'INVALID','*','') status, tablespace_name
2 from user_objects a, user_segments b
3 where a.object_name = b.segment_name (+)
4 and rownum < 50
5 order by object_type, object_name
6 /
OBJECT_TYPE
-------------------
OBJECT_NAME
-------------------------------------------------------------------------
S TABLESPACE_NAME
- ------------------------------
FUNCTION
CHITIME
FUNCTION
IS_OVERDUE
FUNCTION
RECEIVE_MESSAGE
*
FUNCTION
RULERSTR
FUNCTION
TABCOUNT
FUNCTION
TO_MMSDDSYYYY_OR_NULL
drop table people;
OBJECT_TYPE
-------------------
OBJECT_NAME
-------------------------------------------------------------------------
S TABLESPACE_NAME
- ------------------------------
FUNCTION
TO_NUMBER_OR_NULL
FUNCTION
TRACEIT
*
FUNCTION
VALUE_IN
PACKAGE
CLASSPACKAGE
*
PACKAGE
DATES
PACKAGE
GENDER_TS
OBJECT_TYPE
-------------------
OBJECT_NAME
-------------------------------------------------------------------------
S TABLESPACE_NAME
- ------------------------------
*
PACKAGE
PARAMETERS
PACKAGE
SCOPES
PACKAGE
WORKER_TS
*
PACKAGE
WORKER_TYPE_TS
*
PACKAGE
WORKPLACE_TYPE_TS
*
PACKAGE BODY
OBJECT_TYPE
-------------------
OBJECT_NAME
-------------------------------------------------------------------------
S TABLESPACE_NAME
- ------------------------------
CLASSPACKAGE
*
PACKAGE BODY
DATES
PACKAGE BODY
GENDER_TS
*
PACKAGE BODY
PARAMETERS
PACKAGE BODY
SCOPES
PACKAGE BODY
WORKER_TS
*
OBJECT_TYPE
-------------------
OBJECT_NAME
-------------------------------------------------------------------------
S TABLESPACE_NAME
- ------------------------------
PACKAGE BODY
WORKER_TYPE_TS
*
PACKAGE BODY
WORKPLACE_TYPE_TS
*
PROCEDURE
BULK_TEST
*
PROCEDURE
CLOSECUR
*
PROCEDURE
CREINDX
*
PROCEDURE
DELETE_CUST
*
OBJECT_TYPE
-------------------
OBJECT_NAME
-------------------------------------------------------------------------
S TABLESPACE_NAME
- ------------------------------
PROCEDURE
DROPIT
PROCEDURE
DROP_IF_EXISTS
PROCEDURE
FCREATE
*
PROCEDURE
FLUSH
PROCEDURE
GET_LINE
*
PROCEDURE
P1
OBJECT_TYPE
-------------------
OBJECT_NAME
-------------------------------------------------------------------------
S TABLESPACE_NAME
- ------------------------------
PROCEDURE
PRINTLN
PROCEDURE
PUT_BOOLEAN
*
PROCEDURE
P_RUN_INSERT
*
PROCEDURE
ROW_AT_A_TIME_TEST
*
PROCEDURE
RUNDDL
PROCEDURE
OBJECT_TYPE
-------------------
OBJECT_NAME
-------------------------------------------------------------------------
S TABLESPACE_NAME
- ------------------------------
SAVESTRINGTOFILE
*
PROCEDURE
SEND_MESSAGE
*
PROCEDURE
WAIT
*
TABLE
HAZARD_LEVEL_T
SYSTEM
TYPE
DEBUG_O
TYPE BODY
DEBUG_O
*
OBJECT_TYPE
-------------------
OBJECT_NAME
-------------------------------------------------------------------------
S TABLESPACE_NAME
- ------------------------------
VIEW
DEPT20_V
*
VIEW
SALES_BY_ATLAS_V
*
VIEW
SALES_PER_PERSON_V
*