Oracle DBMS_REDEFINITION_INTERNAL
Version 11.2.0.3
 
General Information
Subprograms
ADD_DEP_ERROR GET_REDEF_ID IS_CONTRAINT_ON_NTAB
DELETE_DEP_ERROR GET_SUPPLEMENTAL_LOG_GRP_NAME IS_INDEX_ON_NESTED_TAB
FETCH_DDL GET_SUPPLEMENTAL_LOG_TYPE IS_NOTNULL_CONSTRAINT
GET_MVLOG_NAME GET_TABLE_OBJID IS_REG_DEP_OBJ
GET_PARTITION_CNT GET_USER_ID REGISTER_DEP_OBJ
Source {ORACLE_HOME}/rdbms/admin/prvtbord.plb
First Available 11.2.0.3
Data Types CREATE OR REPLACE TYPE sys.ku$_ddl AS OBJECT (
ddltext     CLOB,                 -- The DDL text
parsedItems sys.ku$_parsed_items) -- the parsed items
/

CREATE OR REPLACE TYPE sys.ku$_ddls IS TABLE OF sys.ku$_ddl;
/
Dependencies
CCOL$ DBA_LOG_GROUPS IND$
CDEF$ DBA_MVIEW_LOGS KU$_DDLS
COL$ DBA_REDEFINITION_OBJECTS OBJ$
CON$ DBA_TAB_PARTITIONS REDEF_DEP_ERROR$
DBA_CONSTRAINTS DBA_USERS REDEF_OBJECT$
DBA_CONS_COLUMNS DBMS_METADATA TRIGGER$
DBA_INDEXES DBMS_REDEFINITION TRIGGERDEP$
DBA_IND_COLUMNS ICOL$ USER$
Security Model Owned by SYS with no privs granted
 
ADD_DEP_ERROR
Undocumented but likely creates a dependency error record in redef_dep_error$ visualized in dba_redefinition_errors dbms_redefinition_internal.add_dep_error(
rid         IN BINARY_INTEGER,
otyp        IN BINARY_INTEGER,  -- object type
o_obj_owner IN VARCHAR2,        -- object_owner
o_obj_name  IN VARCHAR2,        -- object name
o_bt_owner  IN VARCHAR2,        -- base table owner
o_bt_name   IN VARCHAR2,        -- base table object name
ddltxt      IN CLOB);
TBD
 
DELETE_DEP_ERROR
Undocumented but likely removes a dependency error created by the ADD_DEP_ERROR procedure dbms_redefinition_internal.delete_dep_error(
rid         IN BINARY_INTEGER,
otyp        IN BINARY_INTEGER,  -- object type
o_obj_owner IN VARCHAR2,        -- object_owner
o_obj_name  IN VARCHAR2,        -- object name
o_bt_owner  IN VARCHAR2,        -- base table owner
o_bt_name   IN VARCHAR2,        -- base table object name
TBD
 
FETCH_DDL
Based on a handle returns associated DDL statements dbms_redefinition_internal.fetch_ddl(handle IN NUMBER) RETURN ku$ddls;
TBD
 
GET_MVLOG_NAME
Given a schema and table name returns the name of the associated materialized view log dbms_redefinition_internal.get_mvlog_name(towner IN VARCHAR2, tname  IN VARCHAR2) RETURN VARCHAR2;
conn / as sysdba

CREATE MATERIALIZED VIEW LOG ON uwclass.servers;

set serveroutput on

DECLARE
 mvlog_name VARCHAR2(30);
BEGIN
  mvlog_name := dbms_redefinition_internal.get_mvlog_name('UWCLASS', 'SERVERS');
  dbms_output.put_line(mvlog_name);
  mvlog_name := dbms_redefinition_internal.get_mvlog_name('UWCLASS', 'SERVINST');
EXCEPTION
  WHEN no_data_found THEN
    dbms_output.put_line('Table does not have a materialized view log');
END;
/

DROP MATERIALIZED VIEW LOG ON uwclass.servers;
 
GET_PARTITION_CNT
Returns the number of partitions in a partitioned table dbms_redefinition_internal.get_partition_cnt(tab_name IN VARCHAR2, tab_owner  IN VARCHAR2) RETURN NUMBER;
CREATE TABLE uwclass.hash_part (
prof_history_id    NUMBER(10),
prof_hist_comments VARCHAR2(100))
PARTITION BY HASH (prof_history_id)
PARTITIONS 3
STORE IN (uwdata);

set serveroutput on

DECLARE
  pcount NUMBER;
BEGIN
  pcount := dbms_redefinition_internal.get_partition_cnt('HASH_PART', 'UWCLASS');
  dbms_output.put_line(TO_CHAR(pcount));
END;
/

DROP TABLE uwclass.hash_part;
 
GET_REDEF_ID
Returns a redefinition handle and information about the redefinition job dbms_redefinition_internal.get_redef_id(
c_uname       IN  VARCHAR2,
c_orig_table  IN  VARCHAR2,
redef_id      OUT NUMBER,          -- handle
int_obj_owner OUT VARCHAR2,        -- interim table owner
int_obj_name  OUT VARCHAR2,        -- interim table name
is_part_redef OUT BINARY_INTEGER,  -- is a partitioned object
has_mvlog     OUT BINARY_INTEGER,  -- has a materialized view log
TBD
 
GET_SUPPLEMENTAL_LOG_GRP_NAME
Can be used to obtain the name of a supplemental log group dbms_redefinition_internal.get_supplemental_log_grp_name(
grp_owner IN  VARCHAR2,
tab_name  IN  VARCHAR2,
grp_type  IN  VARCHAR2,
grp_name  OUT VARCHAR2);
TBD
 
GET_SUPPLEMENTAL_LOG_TYPE
Can be used to return the supplemental log type dbms_redefinition_internal.get_supplemental_log_type(
grp_owner IN  VARCHAR2,
grp_name  IN  VARCHAR2,
tab_name  IN  VARCHAR2,
grp_type  OUT VARCHAR2);
TBD
 
GET_TABLE_OBJID
Given a schema and table name returns the object id from obj$ dbms_redefinition_internal.get_table_objid(tab_name IN VARCHAR2, tab_owner IN VARCHAR2) RETURN NUMBER;
set serveroutput on

DECLARE
 objID dba_objects.object_id%TYPE;
BEGIN
  objID := dbms_redefinition_internal.get_table_objid('SERVERS', 'UWCLASS');
  dbms_output.put_line(TO_CHAR(objID));
END;
/

SELECT owner, object_name
FROM dba_objects
WHERE object_id = 76978;
 
GET_USER_ID
Returns the user_id of a user dbms_redefinition_internal.get_user_id(user_name IN VARCHAR2) RETURN BINARY_INTEGER;
set serveroutput on

DECLARE
  uid dba_users.user_id%TYPE;
BEGIN
  uid := dbms_redefinition_internal.get_user_id('UWCLASS');
  dbms_output.put_line(TO_CHAR(uid));
END;
/

SELECT username
FROM dba_users
WHERE user_id = 90;
 
IS_CONTRAINT_ON_NTAB
Returns a value indicative that a constraint is on a nested table dbms_redefinition_internal.is_constraint_on_ntab(
cons_name  IN VARCHAR2,
cons_owner IN VARCHAR2)
RETURN NUMBER;
TBD
 
IS_INDEX_ON_NESTED_TAB
Returns a value indicative that an index is on a nested table dbms_redefinition_internal.is_index_on_nested_tab(
idx_name  IN VARCHAR2,
idx_owner IN VARCHAR2)
RETURN NUMBER;
TBD
 
IS_NOTNULL_CONSTRAINT
Returns a value indicative that a constraint is  a not null constraint dbms_redefinition_internal.is_notnull_constraint(
cons_name  IN VARCHAR2,
cons_owner IN VARCHAR2)
RETURN NUMBER;
TBD
 
IS_REG_DEP_OBJ
Returns true if the object has been registered as a dependent object of the table being redefined dbms_redefinition_internal.is_reg_dep_obj(
rid         IN BINARY_INTEGER,
otyp        IN BINARY_INTEGER,
o_obj_owner IN VARCHAR2,
o_obj_name  IN VARCHAR2,
o_bt_owner  IN VARCHAR2,
o_bt_name   IN VARCHAR2)
RETURN BOOLEAN;
TBD
 
REGISTER_DEP_OBJ
Registers an object as dependent dbms_redefinition_internal.register_dep_obj(
rid         IN BINARY_INTEGER,
otyp        IN BINARY_INTEGER,
o_obj_owner IN VARCHAR2,
o_obj_name  IN VARCHAR2,
o_bt_owner  IN VARCHAR2,
o_bt_name   IN VARCHAR2,
i_obj_owner IN VARCHAR2,
i_obj_name  IN VARCHAR2
typflag     IN BINARY_INTEGER;)
TBD
 
 
Related Topics
DBMS_REDEFINITION
 
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-2013 Daniel A. Morgan All Rights Reserved