Oracle DBMS_OBJECTS_UTILS
Version 12.1.0.1

General Information
Library Note Morgan's Library Page Footer
The Library is currently in the process of being upgraded from Oracle Database Version 11.2.0.3 to 12.1.0.1. Demos are being upgraded to reflect the new Container paradigm as well as EBR (Edition Based Redefinition) and may contain references to CDBs, PDBs, and other objects you may not be familiar with such as CDB_OBJECTS_AE: Welcome to 12c.
Purpose This package contains utilities to upgrade the type dictionary images from 8.0 to 8.1. The dictionary tables that could be in 8.0 are kottd$, kottb$, kottbx$, kotad$ and kotmd$, which existed in 8.0 or 8.1, when 8.0 compatibility was possible, kotadx$ was created in 9iR2 when we required 8.1 minimum compatibility.
AUTHID CURRENT_USER
Dependencies
COL$ DBMS_OBJECTS_UTILS_TSOURCE SOURCE$
COLTYPE$ DBMS_OUTPUT SUBCOLTYPE$
DBMS_OBJECTS_UTILS_TINFO DEPENDENCY$ TYPE$
DBMS_OBJECTS_UTILS_TNAME OBJ$ USER$
DBMS_OBJECTS_UTILS_TNAMEARR PLITBLM UTL_RECOMP
DBMS_OBJECTS_UTILS_TSELEM    
Documented No
First Available Not known but ~2007
Security Model Owned by SYS with no privileges granted
Source {ORACLE_HOME}/rdbms/admin/dbmsobj.sql
Subprograms
 
DELETE_ORPHAN_TYPEIDCOLS (new 12.1)
Clean up all orphaned entries in col$.
Read source code notes
dbms_objects_utils.delete_orphan_typeidcols;
exec dbms_objects_utils.delete_orphan_typeidcols;
 
FIX_KOTTD_IMAGES (new 12.1)
  dbms_objects_utils.fix_kottd_images;
exec dbms_objects_utils.fix_kottd_images;
 
RECOMPILE_TYPES (new 12.1)
Used during upgrade/downgrade and was the only way to recompile a type with table dependents dbms_objects_utils.recompile_types(names IN  dbms_objects_utils_tnamearr);
TBD
 
SPLIT_SOURCE
This function splits the source$ entry for the latest version of the type to its CREATE and ALTERs and returns the number or of split sources dbms_objects_utils.split_source(
tschema IN  CHAR,
tname   IN  CHAR,
sources OUT dbms_objects_utils_tsource)
RETURN NUMBER;
TBD
 
UPDATE_TYPES
Will take in 2 schema names, schema1 and schema2 and for each type type1 present in schema2 and schema1, it will make any object column/table dependent on schema1.type1 point to schema2.type1 -- can also be used for updating just one type in schema1. In that case give the typename as the 3rd parameter. If you give NULL for typename it will default to the above behaviour.

dbms_objects_utils.update_types(
schema1      IN VARCHAR2,
schema2      IN VARCHAR2,
typename     IN VARCHAR2,
check_update IN BOOLEAN);
TBD
 
UPGRADE_DICT_IMAGE
Upgrades the type dictionary images from 8.0 to 8.1. The dbms_objects_utils.upgrade_dict_image;
exec dbms_objects_utils.upgrade_dict_image;

Related Topics
Packages

Morgan's Library Page Footer
This site is maintained by Dan Morgan. Last Updated: This site is protected by copyright and trademark laws under U.S. and International law. © 1998-2014 Daniel A. Morgan All Rights Reserved