Oracle DBMS_STREAMS_ADM_UTL
Version 21c

General Information
Library Note Morgan's Library Page Header
ACE Director Alum Daniel Morgan, founder of Morgan's Library, is scheduling complimentary technical Workshops on Database Security for the first 30 Oracle Database customers located anywhere in North America, EMEA, LATAM, or APAC that send an email to asra_us@oracle.com. Request a Workshop for your organization today.
Purpose Streams Administrative Utilities
AUTHID DEFINER
Constants
Name Data Type Value
 General
PRIVS_LOCAL_OFFSET NUMBER 1
Dependencies
ALL_DIRECTORIES DBMS_FILE_GROUP DBMS_XSTREAM_ADM
APPLY$_DEST_OBJ_OPS DBMS_LOGMNR DBMS_XSTREAM_ADM_INTERNAL
AQ$_AGENT DBMS_LOGMNR_LOGREP_DICT DBMS_XSTREAM_ADM_UTL
COL$ DBMS_LOGREP_EXP DBMS_XSTREAM_AUTH_IVK
DBA_APPLY DBMS_LOGREP_IMP DBMS_XSTREAM_GG_ADM
DBA_AQ_AGENT_PRIVS DBMS_LOGREP_UTIL DBMS_XSTREAM_UTL_IVK
DBA_EVALUATION_CONTEXT_VARS DBMS_LOGREP_UTIL_INVOK DUAL
DBA_OBJECT_TABLES DBMS_PROPAGATION_ADM GLOBAL_NAME
DBA_PROPAGATION DBMS_PROPAGATION_INTERNAL GOLDENGATE$_PRIVILEGES
DBA_QUEUES DBMS_RECO_SCRIPT_INT OBJ$
DBA_QUEUE_TABLES DBMS_RULE_ADM PLITBLM
DBA_RULES DBMS_SQL PROPS$
DBA_RULE_SETS DBMS_STANDARD STREAMS$_APPLY_MILESTONE
DBA_RULE_SET_RULES DBMS_STREAMS STREAMS$_APPLY_PROCESS
DBA_STREAMS_MESSAGE_CONSUMERS DBMS_STREAMS_ADM STREAMS$_CAPTURE_PROCESS
DBA_STREAMS_RULES DBMS_STREAMS_ADM_IVK STREAMS$_DEST_OBJS
DBA_STREAMS_UNSUPPORTED DBMS_STREAMS_ADM_UTL_INVOK STREAMS$_DEST_OBJ_COLS
DBA_TABLES DBMS_STREAMS_AUTH STREAMS$_MESSAGE_CONSUMERS
DBMS_APPLY_ADM DBMS_STREAMS_AUTO_INT STREAMS$_MESSAGE_RULES
DBMS_APPLY_ADM_INTERNAL DBMS_STREAMS_DECL STREAMS$_PRIVILEGED_USER
DBMS_APPLY_ERROR DBMS_STREAMS_LCR_INT STREAMS$_PROPAGATION_PROCESS
DBMS_AQADM_INV DBMS_STREAMS_MT STREAMS$_RULES
DBMS_AQADM_SYS DBMS_STREAMS_SM STREAMS$_RULE_NAME_S
DBMS_CAPTURE_ADM DBMS_STREAMS_TABLESPACE_ADM USER$
DBMS_CAPTURE_ADM_INTERNAL DBMS_STREAMS_TBS_INT V$ARCHIVED_LOG
DBMS_CAPTURE_ADM_IVK DBMS_SYSTEM V$LOGMNR_CONTENTS
DBMS_CAPTURE_SWITCH_INTERNAL DBMS_SYS_SQL XSTREAM$_PRIVILEGES
DBMS_CMP_INT DBMS_UTILITY _DBA_CAPTURE
DBMS_COMPARISON    
Documented No
First Available Not known
Security Model Owned by SYS with no privileges granted
Source {ORACLE_HOME}/rdbms/admin/prvthstr.plb
{ORACLE_HOME}/rdbms/admin/prvtbstr.plb
Subprograms
 
ADD_PROPAGATION_RULE
Undocumented dbms_streams_adm_utl.add_propagation_rule(
rule_type              IN  NUMBER,
canon_object_name      IN  VARCHAR2,
canon_object_owner     IN  VARCHAR2,
streams_name           IN  VARCHAR2,
source_queue_name      IN  VARCHAR2,
destination_queue_name IN  VARCHAR2,
include_dml            IN  BOOLEAN,
include_ddl            IN  BOOLEAN,
include_tagged_lcr     IN  BOOLEAN,
source_database        IN  VARCHAR2,
and_condition          IN  VARCHAR2,
inclusion_rule         IN  BOOLEAN,
canon_dml_rule_name    OUT VARCHAR2,
canon_ddl_rule_name    OUT VARCHAR2,
canon_invoker          IN  VARCHAR2,
queue_to_queue         IN  BOOLEAN)
TBD
 
ADD_STREAMS_ADMIN_PRIVILEGE
Undocumented dbms_streams_adm_utl.add_streams_admin_privilege(
grantee      IN VARCHAR2,
privs_offset IN NUMBER);
TBD
 
CHECK_AGENT_DB_ACCESS
Undocumented dbms_streams_adm_utl.check_agent_db_access(
canon_agent IN VARCHAR2,
canon_quser IN VARCHAR2)
RETURN BOOLEAN;
TBD
 
CHECK_APPLY_EXISTS
Undocumented dbms_streams_adm_utl.check_apply_exists(
canon_apply_name IN VARCHAR2,
proc_use_context IN VARCHAR2,
include_xout     IN BOOLEAN)
RETURN BOOLEAN;
TBD
 
CHECK_CAPTURE_INPUTS
Undocumented dbms_streams_adm_utl.check_capture_inputs(
input_strm_type        IN NUMBER,
canon_src_db           IN VARCHAR2,
canon_streams_name     IN VARCHAR2,
canon_source_root_name IN VARCHAR2);
TBD
 
CHECK_DDL_RULE
Undocumented dbms_streams_adm_utl.check_ddl_rule(
canon_rule_owner IN VARCHAR2,
canon_rule_name  IN VARCHAR2)
RETURN BOOLEAN;
TBD
 
CHECK_PROCESS_EXISTS
Not sure what it is supposed to do but clearly it doesn't do it. This should have failed. dbms_streams_adm_utl.check_process_exists(canon_streams_name IN VARCHAR2);
exec dbms_streams_adm_utl.check_process_exists('ZZYZX');

PL/SQL procedure successfully completed.
 
CHECK_PROPAGATION_PARAM
Undocumented dbms_streams_adm_utl.check_propagation_param(
in_source_qname            IN  VARCHAR2,
in_dest_qname              IN  VARCHAR2,
in_streams_name            IN  VARCHAR2,
canon_out_source_qname     OUT VARCHAR2,
canon_out_dest_qname       OUT VARCHAR2,
canon_out_dest_dblink      OUT VARCHAR2,
canon_source_qowner        OUT VARCHAR2,
canon_source_qname         OUT VARCHAR2,
canon_out_streams_name     OUT VARCHAR2,
canon_out_ruleset_name     OUT VARCHAR2,
canon_out_neg_ruleset_name OUT VARCHAR2,
streams_exist              OUT BOOLEAN,
canon_invoker              IN  VARCHAR2,
queue_to_queue             IN  BOOLEAN);
TBD
 
CHECK_QUEUE_ENABLED
Undocumented dbms_streams_adm_utl.check_queue_enabled(
canon_queue_owner IN VARCHAR2,
canon_queue_name  IN VARCHAR2)
RETURN BOOLEAN;
TBD
 
CHECK_QUEUE_EXISTS
Undocumented

Overload 1
dbms_streams_adm_utl.check_queue_exists(
queue_name           IN  VARCHAR2,
canon_default_qowner IN  VARCHAR2,
canon_qowner         OUT VARCHAR2,
canon_qname          OUT VARCHAR2,
canon_db_name        OUT VARCHAR2,
canon_db_dom         OUT VARCHAR2);
TBD
Overload 2 dbms_streams_adm_utl.check_queue_exists(
canon_queue_owner IN VARCHAR2,
canon_queue_name  IN VARCHAR2)
RETURN BOOLEAN;
TBD
 
CHECK_QUEUE_TABLE
Undocumented dbms_streams_adm_utl.check_queue_table(
canon_table_name IN VARCHAR2,
canon_user_name  IN VARCHAR2)
RETURN BOOLEAN;
TBD
 
CHECK_STREAMS_TYPE
Undocumented dbms_streams_adm_utl.check_streams_type(streams_type IN VARCHAR2) RETURN NUMBER;
TBD
 
CHECK_TABLE_EXISTS
Undocumented dbms_streams_adm_utl.check_table_exists(
canon_table_name IN VARCHAR2,
canon_user_name  IN VARCHAR2)
RETURN BOOLEAN;
TBD
 
CHECK_USER_ACCESS
Undocumented

Unlike CHECK_PROCESS_EXISTS, above, this procedure appears to actually do something: It failed as it should have
dbms_streams_adm_utl.check_user_access(
canon_gen_streams_name IN VARCHAR2,
canon_invoker          IN VARCHAR2,
canon_queue_owner      IN VARCHAR2,
canon_queue_name       IN VARCHAR2);
SQL> exec dbms_streams_adm_utl.check_user_access('A', 'B', 'C', 'D');
BEGIN dbms_streams_adm_utl.check_user_access('A', 'B', 'C', 'D'); END;
*
ERROR at line 1:
ORA-01403: no data found
ORA-06512: at "SYS.DBMS_STREAMS_ADM_UTL", line 3762
ORA-01403: no data found
ORA-06512: at "SYS.DBMS_STREAMS_ADM_UTL", line 3754
ORA-06512: at line 1
 
CHECK_USER_EXISTS
Undocumented dbms_streams_adm_utl.check_user_exists(canon_user IN VARCHAR2) RETURN BOOLEAN;
BEGIN
  IF dbms_streams_adm_utl.check_user_exists('C##UWCLASS') THEN
    dbms_output.put_line('T');
  ELSE
    dbms_output.put_line('F');
  END IF;
END;
/
T

PL/SQL procedure successfully completed.
 
CREATE_DEFAULT_RULE
Undocumented dbms_streams_adm_utl.create_default_rule(
rule_type                 IN  NUMBER,
canon_object_name         IN  VARCHAR2,
canon_object_owner        IN  VARCHAR2,
include_dml               IN  BOOLEAN,
include_ddl               IN  BOOLEAN,
include_procedure         IN  BOOLEAN,
include_tag_on            IN  BOOLEAN,
canon_source_database     IN  VARCHAR2,
and_condition             IN  VARCHAR2,
canon_dml_rule_name       OUT VARCHAR2,
canon_ddl_rule_name       OUT VARCHAR2,
canon_procedure_rule_name OUT VARCHAR2,
dml_rule_context          OUT VARCHAR2,
ddl_rule_context          OUT VARCHAR2,
procedure_rule_context    OUT VARCHAR2,
canon_source_root         IN  VARCHAR2,
canon_invoker             IN  VARCHAR2,
canon_procedure           IN  VARCHAR2,
null_package_name         IN  BOOLEAN);
TBD
 
CREATE_PROPAGATION_PROCESS
Undocumented dbms_streams_adm_utl.create_propagation_process(
in_source_qname              IN  VARCHAR2,
in_dest_qname                IN  VARCHAR2,
in_streams_name              IN  VARCHAR2,
canon_in_dml_rule_name       IN  VARCHAR2,
canon_in_ddl_rule_name       IN  VARCHAR2,
canon_in_msg_rule_name       IN  VARCHAR2,
canon_out_source_qname       OUT VARCHAR2,
canon_out_dest_qname         OUT VARCHAR2,
canon_out_dest_dblink        OUT VARCHAR2,
canon_source_qowner          OUT VARCHAR2,
canon_source_qname           OUT VARCHAR2,
canon_out_propagation_name   OUT VARCHAR2,
canon_exist_ruleset_name     OUT VARCHAR2,
canon_exist_neg_ruleset_name OUT VARCHAR2,
propagation_exist            OUT BOOLEAN,
inclusion_rule               IN  BOOLEAN,
canon_invoker                IN  VARCHAR2,
queue_to_queue               IN  BOOLEAN);
TBD
 
CREATE_RULE_STRING_GLOBAL
Undocumented dbms_streams_adm_utl.create_rule_string_global(
include_tag           IN BOOLEAN,
string_type           IN VARCHAR2,
canon_source_database IN VARCHAR2,
canon_source_root     IN VARCHAR2)
RETURN VARCHAR2;
TBD
 
CREATE_RULE_STRING_PROCEDURE
Undocumented dbms_streams_adm_utl.create_rule_string_procedure(
canon_rule_owner      IN VARCHAR2,
canon_rule_package    IN VARCHAR2,
canon_rule_procedure  IN VARCHAR2,
null_package_name     IN BOOLEAN,
include_tag           IN BOOLEAN,
canon_source_database IN VARCHAR2,
canon_source_root     IN VARCHAR2)
RETURN VARCHAR2;
TBD
 
CREATE_RULE_STRING_SCHEMA
Undocumented dbms_streams_adm_utl.create_rule_string_schema(
canon_rule_user_name  IN VARCHAR2,
include_tag           IN BOOLEAN,
string_type           IN VARCHAR2,
canon_source_database IN VARCHAR2,
canon_source_root     IN VARCHAR2)
RETURN VARCHAR2;
TBD
 
CREATE_RULE_STRING_TABLE
Undocumented dbms_streams_adm_utl.create_rule_string_table(
canon_rule_table_name IN VARCHAR2,
canon_rule_user_name  IN VARCHAR2,
include_tag           IN BOOLEAN,
string_type           IN VARCHAR2,
canon_source_database IN VARCHAR2,
canon_source_root     IN VARCHAR2)
RETURN VARCHAR2;
TBD
 
DROP_APPLY
Undocumented dbms_streams_adm_utl.drop_apply(
canon_queue_owner IN VARCHAR2,
canon_queue_name  IN VARCHAR2,
cascade           IN BOOLEAN);
TBD
 
DROP_CAPTURE
Undocumented dbms_streams_adm_utl.drop_capture(
canon_queue_owner IN VARCHAR2,
canon_queue_name  IN VARCHAR2,
cascade           IN BOOLEAN);
TBD
 
DROP_CONSUMER
Undocumented dbms_streams_adm_utl.drop_consumer(
canon_queue_owner IN VARCHAR2,
canon_queue_name  IN VARCHAR2,
cascade           IN BOOLEAN);
TBD
 
DROP_DEQUEUE
Undocumented dbms_streams_adm_utl.drop_dequeue(
canon_dequeue_name    IN VARCHAR2,
drop_unused_rule_sets IN BOOLEAN);
TBD
 
DROP_PROPAGATION
Undocumented dbms_streams_adm_utl.drop_propagation(
canon_queue_owner IN VARCHAR2,
canon_queue_name  IN VARCHAR2,
cascade           IN BOOLEAN);
TBD
 
ENSURE_STREAMS_TYPE_DEQUEUE
Undocumented dbms_streams_adm_utl.ensure_streams_type_dequeue(
canon_streams_name IN VARCHAR2,
streams_name       IN VARCHAR2,
canon_queue_owner  IN VARCHAR2,
canon_queue_name   IN VARCHAR2);
TBD
 
GENERATE_DUMP_FILE_NAME
Undocumented dbms_streams_adm_utl.generate_dump_file_name(
prefix                 IN VARCHAR2,
suffix                 IN VARCHAR2,
canon_directory_object IN VARCHAR2)
RETURN VARCHAR2;
TBD
 
GENERATE_NAME
Undocumented dbms_streams_adm_utl.generate_name(
canon_owner IN VARCHAR2,
canon_name  IN VARCHAR2,
type        IN NUMBER,
maxname_len IN NUMBER)
RETURN VARCHAR2;
TBD
 
GET_APPLY_QUEUE
Undocumented dbms_streams_adm_utl.get_apply_queue(
canon_apply_name IN  VARCHAR2,
canon_qowner     OUT VARCHAR2,
canon_qname      OUT VARCHAR2,
issue_error      IN  BOOLEAN);
TBD
 
GET_DBLINK_NAME
Undocumented dbms_streams_adm_utl.get_dblink_name(
dblink       IN  VARCHAR2,
canon_dblink OUT VARCHAR2);
TBD
 
GET_DP_JOB_MODE
Undocumented dbms_streams_adm_utl.get_dp_job_mode(instantiation IN BINARY_INTEGER) RETURN VARCHAR2;
TBD
 
GET_EVALUATION_CONTEXT
Undocumented dbms_streams_adm_utl.get_evaluation_context(
canon_variable_type_owner IN  VARCHAR2,
canon_variable_type_name  IN  VARCHAR2,
canon_eval_ctx_name       OUT VARCHAR2,
canon_rule_variable_name  OUT VARCHAR2);
TBD
 
GET_IGNORE_TXNS
Undocumented dbms_streams_adm_utl.get_ignore_txns(
apply_num              IN NUMBER,
src_pit_scn            IN NUMBER,
dest_instantiation_scn IN NUMBER,
dest_start_scn         IN  NUMBER,
dest_skip_txn_ids      OUT sys.dbms_utiliyt.name_array,
TBD
 
GET_NOTIFICATION_LOC_HEADER
Undocumented dbms_streams_adm_utl.get_notification_loc_header(canon_ntype IN VARCHAR2) RETURN VARCHAR2;
TBD
 
GET_STREAMS_NAME
Undocumented dbms_streams_adm_utl.get_streams_name(
streams_type           IN     NUMBER,
canon_streams_name     IN OUT VARCHAR2,
streams_qoid           IN     RAW,
streams_exist             OUT BOOLEAN,
canon_ruleset_name        OUT VARCHAR2,
canon_neg_ruleset_name    OUT VARCHAR2,
canon_invoker          IN     VARCHAR2,
canon_src_db           IN     VARCHAR2,
canon_src_root         IN     VARCHAR2);
TBD
 
INSTANTIATION_NUM_TO_CHAR
Undocumented dbms_streams_adm_utl.instantiation_num_to_char(instantiation IN BINARY_INTEGER)
RETURN VARCHAR2;
TBD
 
IS_DATAPUMP_INSTANTIATION
Undocumented dbms_streams_adm_utl.is_datapump_instantiation(instantiation IN BINARY_INTEGER)
RETURN BOOLEAN;
TBD
 
IS_NETWORK_INSTANTIATION
Undocumented dbms_streams_adm_utl.is_network_instantiation(instantiation IN BINARY_INTEGER)
RETURN BOOLEAN;
TBD
 
POPULATE_DUMP_FILE_SET
Undocumented dbms_streams_adm_utl.populate_dump_file_set(
maintain_mode          IN     VARCHAR2,
canon_directory_object IN     VARCHAR2,
dump_file_name         IN     VARCHAR2,
dump_file_count        IN     NUMBER,
dump_file_set          IN OUT sys.dbms_streams_tablespace_adm.file_set);
TBD
 
POPULATE_LOG_FILE_SET
Undocumented dbms_streams_adm_utl.populate_log_file_set(
maintain_mode          IN     VARCHAR2,
canon_directory_object IN     VARCHAR2,
log_file_name          IN     VARCHAR2,
dump_file_set          IN     sys.dbms_streams_tablespace_adm.file_set,
log_file_set           IN OUT sys.dbms_streams_tablespace_adm.file_set);
TBD
 
POPULATE_MESG_CONSUMER_TABLE
Undocumented dbms_streams_adm_utl.populate_mesg_consumer_table(
canon_streams_name IN VARCHAR2,
queue_oid          IN RAW,
canon_queue_owner  IN VARCHAR2,
canon_queue_name   IN VARCHAR2,
ruleset_name       IN VARCHAR2,
neg_ruleset_name   IN VARCHAR2);
TBD
 
POPULATE_MESSAGE_RULE
Undocumented dbms_streams_adm_utl.populate_message_rule(
canon_streams_name       IN VARCHAR2,
streams_type             IN NUMBER,
canon_rule_variable_name IN VARCHAR2,
rule_name                IN VARCHAR2,
rule_condition           IN VARCHAR2,
canon_message_type_owner IN VARCHAR2,
canon_message_type_name  IN VARCHAR2,
canon_invoker            IN VARCHAR2);
TBD
 
POPULATE_STREAMS_RULE
Undocumented dbms_streams_adm_utl.populate_streams_rule(
canon_streams_name    IN VARCHAR2,
streams_type          IN NUMBER,
rule_type             IN NUMBER,
include_tagged_lcr    IN BOOLEAN,
canon_source_database IN VARCHAR2,
canon_rule_name       IN VARCHAR2,
rule_condition        IN VARCHAR2,
dml_condition         IN VARCHAR2,
subsetting_operation  IN NUMBER,
canon_schema_name     IN VARCHAR2,
canon_object_name     IN VARCHAR2,
object_type           IN NUMBER,
canon_source_root     IN VARCHAR2);
TBD
 
PROCESS_DROP_USER_CASCADE
Undocumented dbms_streams_adm_utl.process_drop_user_cascade(canon_dropped_user IN VARCHAR2);
TBD
 
PROCESS_DROP_USER_PRIVILEGE
Undocumented dbms_streams_adm_utl.process_drop_user_privilege(canon_dropped_user IN VARCHAR2);
TBD
 
PURGE_INTERNAL
Undocumented dbms_streams_adm_utl.purge_internal(
source_database    IN VARCHAR2,
source_object_name IN VARCHAR2,
source_object_type IN VARCHAR2,
canon_invoker      IN VARCHAR2);
TBD
 
REMOVE_DEST_OBJ_INFO
Undocumented dbms_streams_adm_utl.remove_dest_obj_info;
exec dbms_streams_adm_utl.remove_dest_obj_info;

PL/SQL procedure successfully completed.
 
REMOVE_EMPTY_HANDLERS
Undocumented dbms_streams_adm_utl.remove_empty_handlers;
exec dbms_streams_adm_utl.remove_empty_handlers;

PL/SQL procedure successfully completed.
 
REMOVE_RULE_INTERNAL
Undocumented dbms_streams_adm_utl.remove_rule_internal(
rule_name        IN VARCHAR2,
streams_type     IN VARCHAR2,
streams_name     IN VARCHAR2,
drop_unused_rule IN BOOLEAN,
inclusion_rule   IN BOOLEAN,
canon_invoker    IN VARCHAR2);
TBD
 
REMOVE_STREAMS_ADMIN_PRIVILEGE
Undocumented dbms_streams_adm_utl.remove_streams_admin_privilege(
grantee      IN VARCHAR2,
privs_offset IN NUMBER);
TBD
 
REMOVE_STREAMS_RULE
Undocumented dbms_streams_adm_utl.remove_streams_rule(
canon_rule_owner   IN VARCHAR2,
canon_rule_name    IN VARCHAR2,
streams_type       IN NUMBER,
canon_streams_name IN VARCHAR2);
TBD
 
TRANSFORM_RULE_CONDITION
Undocumented dbms_streams_adm_utl.transform_rule_condition(
dbms_streams_adm_utl.update_mesg_consumer_table(
dbms_streams_adm_utl.verify_subset_table(
TBD
 
UPDATE_MESG_CONSUMER_TABLE
Undocumented dbms_streams_adm_utl.update_mesg_consumer_table(
canon_streams_name IN VARCHAR2,
ruleset_name       IN VARCHAR2,
neg_ruleset_name   IN VARCHAR2,
canon_queue_owner  IN VARCHAR2);
TBD
 
VERIFY_SUBSET_TABLE
Undocumented dbms_streams_adm_utl.verify_subset_table(
canon_own_name IN VARCHAR2,
canon_tab_name IN VARCHAR2,
table_name     IN VARCHAR2);
TBD

Related Topics
Built-in Functions
Built-in Packages
Database Security
Advanced Queuing
DBMS_CAPTURE_ADM
DBMS_PROPAGATION_ADM
DBMS_RECOVERABLE_SCRIPT
DBMS_STREAMS
DBMS_STREAMS_ADM
DBMS_STREAMS_ADM_IVK
DBMS_STREAMS_ADM_UTL_INT
DBMS_STREAMS_ADM_UTL_INVOK
DBMS_STREAMS_AUTH
DBMS_STREAMS_CONTROL_ADM
DBMS_STREAMS_MT
DBMS_STREAMS_PUB_RPC
DBMS_STREAMS_RPC_INTERNAL
DBMS_STREAMS_TABLESPACE_ADM
What's New In 21c
What's New In 23c

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-2023 Daniel A. Morgan All Rights Reserved
  DBSecWorx