MINI MINI MANI MO
Rem
Rem $Header: rdbms/admin/caths.sql /main/47 2016/11/17 11:36:23 lsheng Exp $
Rem
Rem caths.sql
Rem
Rem Copyright (c) 1997, 2016, Oracle and/or its affiliates.
Rem All rights reserved.
Rem
Rem NAME
Rem caths.sql - CATalog script for Heterogeneous Services
Rem
Rem DESCRIPTION
Rem Create Heterogeneous Services data dictionary objects.
Rem
Rem Contents of several tables and views are selected by
Rem FDS_CLASS_ID and FDS_INST_ID columns. FDS_INST_ID = NULL indicates
Rem a default value; FDS_CLASS_ID cannot be defaulted.
Rem
Rem Many HS data dictionary tables are populated automatically
Rem by agent self-registration during normal server operation.
Rem
Rem
Rem Objects created by this script are:
Rem
Rem hs$_fds_class Table: FDS class definitions
Rem hs_fds_class View: View of FDS class definitions
Rem hs$_fds_class_date Table:FDS class timestamps for last access
Rem hs_fds_class_date View: View of FDS class timestamps
Rem hs$_fds_inst Table: FDS instance definitions
Rem hs_fds_inst View: View of FDS instance definitions
Rem hs$_base_caps Table: Base capability definitions
Rem hs_base_caps View: View of base capability definitions
Rem hs$_class_caps Table: Class-specific FDS capabilities
Rem hs_class_caps View: View of FDS class capabilities
Rem hs$_inst_caps Table: Instance-specific FDS capabilities
Rem hs_inst_caps View: View of instance capabilities
Rem hs$_base_dd Table: Base DD translation definitions
Rem hs_base_dd View: View of base DD translation definitions
Rem hs$_class_dd Table: Class-specific FDS DD translations
Rem hs_class_dd View: View of FDS class DD translations
Rem hs$_inst_dd Table: Instance-specific FDS DD translations
Rem hs_inst_dd View: View of FDS instance DD translations
Rem hs$_class_init Table: Class-specific HS init parameters
Rem hs_class_init View: View of class init parameters
Rem hs$_inst_init Table: Instance-specific HS init parameters
Rem hs_inst_init View: View of instance init parameters
Rem Views of joined class & instance data:
Rem hs_all_caps View: All FDS capabilities
Rem hs_all_dd View: All FDS DD translations
Rem hs_all_inits View: All HS initialization parameters
Rem
Rem NOTES
Rem This script must be run while connected as SYS.
Rem
Rem The hs_all_* views represent only data recorded in
Rem the server DD. Additional instance capabilities ind
Rem instance DD translations may be uploaded from HS agents
Rem when each connection is established. These uploaded
Rem data are merged with data from the server DD for use
Rem on the connection but are not visible in the server DD.
Rem
Rem A similar upload of initialization parameters occurs,
Rem with init parameters from agents logically being a properties
Rem of the session rather than of a class or instance.
Rem The
Rem
Rem
Rem
Rem BEGIN SQL_FILE_METADATA
Rem SQL_SOURCE_FILE: rdbms/admin/caths.sql
Rem SQL_SHIPPED_FILE: rdbms/admin/caths.sql
Rem SQL_PHASE: CATHS
Rem SQL_STARTUP_MODE: NORMAL
Rem SQL_IGNORABLE_ERRORS: NONE
Rem SQL_CALLING_FILE: rdbms/admin/catpexec.sql
Rem END SQL_FILE_METADATA
Rem
Rem MODIFIED (MM/DD/YY)
Rem cvillad 10/25/16 - Add new cap
Rem andmerca 11/04/15 - Add match recognize and dbc to base caps
Rem andmerca 10/04/15 - Support for DBC in outgoing SQL
Rem mbastawa 10/24/14 - bug17765342 add row archival
Rem surman 12/29/13 - 13922626: Update SQL metadata
Rem jahuesva 01/14/13 - XbranchMerge jahuesva_bug-16025907 from
Rem st_rdbms_12.1.0.1
Rem surman 03/27/12 - 13615447: Add SQL patching tags
Rem traney 03/30/11 - 35209: long identifiers dictionary upgrade
Rem psuvarna 12/24/09 - 8858714: add capability for WAIT clause
Rem aamor 09/20/08 - add capability for recursive WITH and for column
Rem alias list for WITH clause
Rem kchen 05/05/08 - fixed bug 6943575
Rem sbellamk 07/31/06 - add capability for native full outer join
Rem kchen 06/02/06 - includes dbmshsld, prvthsld.plb
Rem jahuesva 05/15/06 - Added ODBC datetime datatypes 3066 to 3069
Rem dtahara 08/02/04 - 3547585: added "new connect-by" capability
Rem jahuesva 07/15/04 - Bug 3767742 - Addes missing entries to base caps
Rem jahuesva 10/23/03 - Bug 3214442 - Fixed typo in cap # 169
Rem jahuesva 10/08/03 - Added base capability for HOACdescParamAfterExec
Rem (#1963)
Rem jahuesva 10/01/03 - Added missing base Capabilities
Rem jahuesva 08/22/03 - Added base capability for HOACsupportSchema
Rem (#1964)
Rem jahuesva 08/22/03 - Added base capability for HOACLtIsNull (#1965)
Rem jahuesva 08/22/03 - Added base capability for HOACsupportSchema
Rem (#1966)
Rem jahuesva 07/15/03 - Added base capability for HOACOPTCTX (#392)
Rem jahuesva 03/13/03 - Added base capability for HOACOPTFSTLST (#531)
Rem kchen 08/22/02 - Add base capability for OPTPLS
Rem pravelin 10/23/01 - Fix merge errors.
Rem pravelin 10/19/01 - Merge main branch and log branch versions
Rem rgmani 10/01/01 - Add cap 1966
Rem srajagop 08/20/01 - lob support
Rem pravelin 07/31/01 - Use [create/]replace ops to populate base tables
Rem pravelin 07/26/01 - Eliminate drops, for use from catproc.
Rem gviswana 05/24/01 - CREATE OR REPLACE SYNONYM
Rem rgmani 03/08/01 - Add new base caps
Rem pravelin 12/13/00 - Use index instead of name in hs_fds_class_date
Rem kpeyetti 11/29/00 - privileges & synonyms for hs_fds_class_date
Rem rhungund 10/09/00 - changes to accomodate the migration path
Rem delson 08/28/00 - remove refernces to no-longer-implemented methods
Rem srajagop 06/26/00 - piecewise base cap added
Rem rgmani 07/18/00 - Add new HS base caps
Rem rgmani 06/12/00 - Add base result set capabilities
Rem rgmani 11/29/99 - Add base cap for HOACpublicSchema
Rem rgmani 07/06/99 - Add base cap for 1970
Rem rgmani 06/29/99 - Add base cap 1996
Rem pravelin 01/12/99 - Bug 780957: sqlplus doesn't recognize '#' commen
Rem rgmani 10/20/98 - Add 1971 base cap
Rem rgmani 10/12/98 - Add 1972 base cap
Rem evoss 09/09/98 - bug 725369 (Subquery list in update capability)
Rem pravelin 09/03/98 - Bug 724831: Eliminate 'set echo on'
Rem ncramesh 08/06/98 - change for sqlplus
Rem pravelin 07/20/98 - Eliminate comment referring to cathsAGT.sql scrip
Rem pravelin 06/17/98 - Bug 679473: Don't register TKHODDAU as base DD t
Rem pravelin 02/04/98 - Bug 620715: Add base_dd tables for test extensio
Rem rgmani 08/13/97 - Add base cap for cap #1994
Rem rgmani 07/24/97 - Add base cap for cap #1975
Rem rgmani 07/23/97 - Add base caps for DB2-related capabilities
Rem rgmani 07/10/97 - Add base caps for coercion capabilities
Rem jdraaije 04/17/97 - remove ID columns from external objects view
Rem jdraaije 03/26/97 - Name consistency: ho => hs
Rem pravelin 03/20/97 - Eliminate 'use XA' capability, replaced by init p
Rem pravelin 03/18/97 - Create pseudo-FDS class for BITE (Built-In Test E
Rem ktarkhan 02/20/97 - add external grantees, change external objects
Rem rgmani 02/13/97 - Add base caps for bundling and tcis call
Rem pravelin 01/15/97 - Add setup for base dd translations
Rem jdraaije 01/01/97 - external_procedures ==> external_objects
Rem rgmani 11/06/96 - Add new base DD - TKHODDAU
Rem celsbern 10/21/96 - Changed view names from hs to hs.
Rem rgmani 10/25/96 - Add base caps for new HS datatypes
Rem rgmani 10/14/96 - Add base caps for QuoteOwner and MapAlias
Rem rgmani 09/18/96 - Add new capability 1992 (HOACdelimToFDS)
Rem celsbern 09/06/96 - Removed dbms_hs.package and put in separate files
Rem rgmani 08/21/96 - Add base cap 1993
Rem asurpur 08/28/96 - Dictionary protection: granting execute on dbms_h
Rem rgmani 07/16/96 - Fix bug
Rem rgmani 07/15/96 - Switch to new HS data dictionary
Rem asurpur 05/15/96 - Dictionary Protection: Granting privileges on vie
Rem evoss 05/23/96 - add bind to parameter capability
Rem jdraaije 04/03/96 - Add sys.hs_objects table for callouts
Rem pravelin 03/13/96 - Create HS data dictionary tables and views
Rem pravelin 03/13/96 - Created
Rem
@@?/rdbms/admin/sqlsessstart.sql
--
--############################################################################
--
--############################################################################
--
-- Create the role that is being used to protect access to the HS data
-- dictionary tables and to the dbms_hs, dbms_hs_extproc, and
-- dbms_hs_passthrough packages.
-- The role is immediately granted to select_catalog_role, and
-- execute_catalog_role such that users with generic data dictionary access
-- now also can access the HS data dictionary.
create role hs_admin_select_role;
create role hs_admin_execute_role;
create role hs_admin_role;
grant hs_admin_select_role to select_catalog_role;
grant hs_admin_execute_role to execute_catalog_role;
grant hs_admin_select_role to hs_admin_role;
grant hs_admin_execute_role to hs_admin_role;
--
--############################################################################
--
--############################################################################
--
-- The intention of the FDS class is that it contains all the information,
-- e.g. capabilities, data dictionary translations, etc. that are specific for
-- a whole group of FDSs. In general this group will be accessed by the same
-- HS driver.
--
-- HS$_FDS_CLASS
create table hs$_fds_class
(
fds_class_id number not null,
constraint hs$_fds_class_pk primary key (fds_class_id),
fds_class_name varchar2(30) not null,
constraint hs$_fds_class_uk1 unique (fds_class_name),
fds_class_comments varchar2(255)
);
create sequence hs$_fds_class_s;
-- hs_fds_class view
create or replace view hs_fds_class
(fds_class_name,fds_class_comments,fds_class_id) as
select fds_class_name,fds_class_comments,fds_class_id
from hs$_fds_class;
grant select on hs_fds_class to hs_admin_select_role;
create or replace public synonym hs_fds_class for hs_fds_class;
--
--############################################################################
--
--############################################################################
--
-- Besides having FDS class specific information, users also need
-- to be able to set capabilities, DD translations and init parameters on
-- a per FDS basis. Every RDB database, for instance, requires the RDB$HANDLE
-- environment variable to be set to the name and location of the actual
-- database file. This type of information is set in the FDS table.
--
-- HS$_FDS_INST
create table hs$_fds_inst
(
fds_inst_id number not null,
constraint hs$_fds_inst_pk primary key (fds_inst_id),
fds_class_id number not null,
constraint hs$_fds_inst_fk1 foreign key (fds_class_id)
references hs$_fds_class on delete cascade,
fds_inst_name varchar2(30) not null, /*is this big enough?*/
constraint hs$_fds_inst_uk1 unique (fds_inst_name,fds_class_id),
fds_inst_comments varchar2(255)
);
create sequence hs$_fds_inst_s;
-- hs_fds_inst view
create or replace view hs_fds_inst
(fds_inst_name,fds_inst_comments,fds_class_name,fds_inst_id,fds_class_id) as
select f.fds_inst_name,f.fds_inst_comments,fc.fds_class_name,f.fds_inst_id,
f.fds_class_id
from hs$_fds_class fc,
hs$_fds_inst f
where f.fds_class_id = fc.fds_class_id;
grant select on hs_fds_inst to hs_admin_select_role;
create or replace public synonym hs_fds_inst for hs_fds_inst;
--
--############################################################################
--
--############################################################################
--
-- This is the base capability table. Besides this table we'll also create
-- a table for the DRIVER (fds_class or agent) specific capabilities, and
-- one for the FDS specific capabilities.
--
-- HS$_BASE_CAPS
create table hs$_base_caps
(
cap_number number not null,
constraint hs$_base_caps_pk primary key (cap_number),
cap_description varchar2(255)
);
create or replace view hs_base_caps
(cap_number,cap_description) as
select cap_number, cap_description
from hs$_base_caps;
grant select on hs_base_caps to hs_admin_select_role;
create or replace public synonym hs_base_caps for hs_base_caps;
--
--############################################################################
--
--############################################################################
--
-- This is the FDS class (DRIVER) specific capability table.
--
-- HS$_CLASS_CAPS
create table hs$_class_caps
(
fds_class_cap_id number not null,
constraint hs$_class_caps_pk primary key (fds_class_cap_id),
fds_class_id number not null,
constraint hs$_class_caps_fk1 foreign key (fds_class_id)
references hs$_fds_class on delete cascade,
cap_number number not null,
constraint hs$_class_caps_fk2 foreign key (cap_number)
references hs$_base_caps on delete cascade,
constraint hs$_class_caps_uk1 unique (fds_class_id,cap_number),
context number,
translation varchar2(255),
additional_info number
);
create sequence hs$_class_caps_s;
create or replace view hs_class_caps
(cap_number, cap_description, context, translation, additional_info,
fds_class_name, fds_class_id) as
select cc.cap_number, bc.cap_description, cc.context, cc.translation,
cc.additional_info, fc.fds_class_name, fc.fds_class_id
from hs$_class_caps cc,
hs$_base_caps bc,
hs$_fds_class fc
where bc.cap_number = cc.cap_number
and cc.fds_class_id = fc.fds_class_id;
grant select on hs_class_caps to hs_admin_select_role;
create or replace public synonym hs_class_caps for hs_class_caps;
--
--############################################################################
--
--############################################################################
--
-- This is the FDS instance specific capability table.
--
-- HS$_INST_CAPS
create table hs$_inst_caps
(
fds_inst_cap_id number not null,
constraint hs$_inst_caps_pk primary key (fds_inst_cap_id),
fds_inst_id number not null,
constraint hs$_inst_caps_fk1 foreign key (fds_inst_id)
references hs$_fds_inst on delete cascade,
cap_number number not null,
constraint hs$_inst_caps_fk2 foreign key (cap_number)
references hs$_base_caps on delete cascade,
constraint hs$_inst_caps_uk1 unique (fds_inst_id,cap_number),
context number,
translation varchar2(255),
additional_info number
);
create sequence hs$_inst_caps_s;
create or replace view hs_inst_caps
(cap_number, cap_description, context, translation, additional_info,
fds_class_name, fds_inst_name, fds_class_id, fds_inst_id) as
select bc.cap_number, bc.cap_description, ic.context, ic.translation,
ic.additional_info, fc.fds_class_name, f.fds_inst_name,
fc.fds_class_id, f.fds_inst_id
from hs$_inst_caps ic,
hs$_base_caps bc,
hs$_fds_class fc,
hs$_fds_inst f
where bc.cap_number = ic.cap_number
and ic.fds_inst_id = f.fds_inst_id
and f.fds_class_id = fc.fds_class_id;
grant select on hs_inst_caps to hs_admin_select_role;
create or replace public synonym hs_inst_caps for hs_inst_caps;
--
--############################################################################
--
--############################################################################
--
-- This is the base DD translation table. Besides this table we'll also create
-- a table for the DRIVER (fds_class or agent) specific capabilities, and
-- one for the FDS specific capabilities.
--
-- HS$_BASE_DD
create table hs$_base_dd
(
dd_table_id number not null,
constraint hs$_base_dd_pk primary key (dd_table_id),
dd_table_name varchar2(128) not null,
constraint hs$_base_dd_uk1 unique (dd_table_name),
dd_table_desc varchar2(255)
);
create sequence hs$_base_dd_s;
create or replace view hs_base_dd
(dd_table_name,dd_table_desc, dd_table_id) as
select dd_table_name, dd_table_desc, dd_table_id
from hs$_base_dd;
grant select on hs_base_dd to hs_admin_select_role;
create or replace public synonym hs_base_dd for hs_base_dd;
--
--############################################################################
--
--############################################################################
--
-- This is the FDS class specific DD translation table
--
-- HS$_CLASS_DD
create table hs$_class_dd
(
fds_class_dd_id number not null,
constraint hs$_class_dd_pk primary key (fds_class_dd_id),
fds_class_id number not null,
constraint hs$_class_dd_fk1 foreign key (fds_class_id)
references hs$_fds_class on delete cascade,
dd_table_id number not null,
constraint hs$_class_dd_fk2 foreign key (dd_table_id)
references hs$_base_dd on delete cascade,
constraint hs$_class_dd_uk1 unique (fds_class_id,dd_table_id),
translation_type char(1) not null,
constraint hs$_class_dd_c1 check (translation_type in ('T','M','S')),
translation_text varchar2(4000),
constraint hs$_class_dd_c2 check
((translation_type in('S','T') and translation_text is not NULL) or
(translation_type = 'M'))
);
create sequence hs$_class_dd_s;
create or replace view hs_class_dd
(dd_table_name, dd_table_desc, translation_type, translation_text,
fds_class_name, dd_table_id, fds_class_id) as
select bd.dd_table_name, bd.dd_table_desc, cd.translation_type,
cd.translation_text, fc.fds_class_name, bd.dd_table_id, fc.fds_class_id
from hs$_base_dd bd, hs$_class_dd cd, hs$_fds_class fc
where (bd.dd_table_id = cd.dd_table_id) and (cd.fds_class_id =
fc.fds_class_id);
grant select on hs_class_dd to hs_admin_select_role;
create or replace public synonym hs_class_dd for hs_class_dd;
--
--############################################################################
--
--############################################################################
--
-- This is the FDS instance specific DD translation table
--
-- HS$_INST_DD
create table hs$_inst_dd
(
fds_inst_dd_id number not null,
constraint hs$_inst_dd_pk primary key (fds_inst_dd_id),
fds_inst_id number not null,
constraint hs$_inst_dd_fk1 foreign key (fds_inst_id)
references hs$_fds_inst on delete cascade,
dd_table_id number not null,
constraint hs$_inst_dd_fk2 foreign key (dd_table_id)
references hs$_base_dd on delete cascade,
constraint hs$_inst_dd_uk1 unique (fds_inst_id,dd_table_id),
translation_type char(1) not null,
constraint hs$_inst_dd_c1 check (translation_type in ('T','M','S')),
translation_text varchar2(4000),
constraint hs$_inst_dd_c2 check
((translation_type in ('T','S') and translation_text is not NULL) or
(translation_type = 'M'))
);
create sequence hs$_inst_dd_s;
create or replace view hs_inst_dd
(dd_table_name, dd_table_desc, translation_type, translation_text,
fds_class_name, fds_inst_name, dd_table_id, fds_class_id, fds_inst_id) as
select bd.dd_table_name, bd.dd_table_desc, id.translation_type,
id.translation_text, fc.fds_class_name, f.fds_inst_name,
bd.dd_table_id,
fc.fds_class_id, f.fds_inst_id
from hs$_base_dd bd, hs$_inst_dd id, hs$_fds_class fc, hs$_fds_inst f
where (bd.dd_table_id = id.dd_table_id) and (id.fds_inst_id = f.fds_inst_id)
and (f.fds_class_id = fc.fds_class_id);
grant select on hs_inst_dd to hs_admin_select_role;
create or replace public synonym hs_inst_dd for hs_inst_dd;
--
--############################################################################
--
--############################################################################
--
-- This is the FDS class specific init value table
--
-- HS$_CLASS_INIT
create table hs$_class_init
(
fds_class_init_id number not null,
constraint hs$_class_init_pk primary key (fds_class_init_id),
fds_class_id number not null,
constraint hs$_class_init_fk1 foreign key (fds_class_id)
references hs$_fds_class on delete cascade,
init_value_name varchar2(64) not null,
constraint hs$_class_init_uk1 unique (fds_class_id,init_value_name),
init_value varchar2(255) not null,
init_value_type varchar2(1) not null,
constraint hs$_class_init_c1 check (init_value_type in ('F','T'))
);
create sequence hs$_class_init_s;
create or replace view hs_class_init
(init_value_name, init_value, init_value_type, fds_class_name,
fds_class_init_id, fds_class_id) as
select ci.init_value_name, ci.init_value, ci.init_value_type,
fc.fds_class_name, ci.fds_class_init_id, fc.fds_class_id
from hs$_class_init ci, hs$_fds_class fc
where (ci.fds_class_id = fc.fds_class_id);
grant select on hs_class_init to hs_admin_select_role;
create or replace public synonym hs_class_init for hs_class_init;
--
--############################################################################
--
--############################################################################
--
-- This is the FDS class specific init value table
--
-- HS$_INST_INIT
create table hs$_inst_init
(
fds_inst_init_id number not null,
constraint hs$_inst_init_pk primary key (fds_inst_init_id),
fds_inst_id number not null,
constraint hs$_inst_init_fk1 foreign key (fds_inst_id)
references hs$_fds_inst on delete cascade,
init_value_name varchar2(64) not null,
constraint hs$_inst_init_uk1 unique (fds_inst_id,init_value_name),
init_value varchar2(255) not null,
init_value_type varchar2(1) not null,
constraint hs$_inst_init_c1 check (init_value_type in ('F','T'))
);
create sequence hs$_inst_init_s;
create or replace view hs_inst_init
(init_value_name, init_value, init_value_type, fds_class_name,
fds_inst_name, fds_inst_init_id, fds_class_id, fds_inst_id) as
select ii.init_value_name, ii.init_value, ii.init_value_type,
fc.fds_class_name, f.fds_inst_name, ii.fds_inst_init_id,
fc.fds_class_id, f.fds_inst_id
from hs$_inst_init ii,
hs$_fds_class fc,
hs$_fds_inst f
where ii.fds_inst_id = f.fds_inst_id
and f.fds_class_id = fc.fds_class_id;
grant select on hs_inst_init to hs_admin_select_role;
create or replace public synonym hs_inst_init for hs_inst_init;
--
--#############################################################################
--
--#############################################################################
--
-- HS_ALL_CAPS view
-- This view shows all of the available capabilities for a given class
-- and inst. Class level capabilities override base capabilities and
-- Inst level capabilities override class and base level capabilities.
create or replace view hs_all_caps
(cap_number, context, translation, additional_info, fds_class_name,
fds_inst_name) as
/*clause for the fds_inst level*/
select ic.cap_number, ic.context, ic.translation, ic.additional_info,
fc.fds_class_name, fi.fds_inst_name
from hs$_inst_caps ic, hs$_fds_inst fi, hs$_fds_class fc
where ic.fds_inst_id = fi.fds_inst_id
and fi.fds_class_id = fc.fds_class_id
union
/*clause for the fds_class level minus the fds_inst level*/
select cc.cap_number, cc.context, cc.translation, cc.additional_info,
fc2.fds_class_name, fi2.fds_inst_name
from hs$_class_caps cc, hs$_fds_inst fi2, hs$_fds_class fc2
where cc.fds_class_id = fi2.fds_class_id
and fi2.fds_class_id = fc2.fds_class_id
and not exists
(select 1 from hs$_inst_caps ic2
where ic2.cap_number = cc.cap_number
and ic2.fds_inst_id = fi2.fds_inst_id)
union
/*clause for the base level minus fds_inst and fds_class level*/
select bc.cap_number, 0, null, 0, fc.fds_class_name,
fi.fds_inst_name
from hs$_base_caps bc, hs$_fds_class fc, hs$_fds_inst fi
where fc.fds_class_id = fi.fds_class_id
and not exists
(select 1 from hs$_inst_caps ic
where ic.fds_inst_id = fi.fds_inst_id
and ic.cap_number = bc.cap_number)
and not exists
(select 1 from hs$_class_caps cc
where cc.fds_class_id = fc.fds_class_id
and cc.cap_number = bc.cap_number);
grant select on hs_all_caps to hs_admin_select_role;
create or replace public synonym hs_all_caps for hs_all_caps;
--
--#############################################################################
--
--#############################################################################
--
-- HS_ALL_DD
-- This view shows all of the data dictionary translations for a
-- class and inst. Class level translations override base translations
-- and inst level translations override class and base translations.
create or replace view hs_all_dd
(dd_table_name, translation_type, translation_text, fds_class_name,
fds_inst_name, dd_table_desc) as
/*clause for the inst level*/
select bd.dd_table_name, id.translation_type, id.translation_text,
fc.fds_class_name, fi.fds_inst_name, bd.dd_table_desc
from hs$_inst_dd id, hs$_base_dd bd, hs$_fds_inst fi, hs$_fds_class fc
where id.fds_inst_id = fi.fds_inst_id
and id.dd_table_id = bd.dd_table_id
and fc.fds_class_id = fi.fds_class_id
union
/*clause for the class level minus the inst level*/
select bd2.dd_table_name, cd.translation_type, cd.translation_text,
fc2.fds_class_name, fi2.fds_inst_name, bd2.dd_table_desc
from hs$_class_dd cd, hs$_base_dd bd2, hs$_fds_inst fi2, hs$_fds_class fc2
where cd.fds_class_id = fi2.fds_class_id
and cd.dd_table_id = bd2.dd_table_id
and fc2.fds_class_id = fi2.fds_class_id
and not exists
(select 1 from hs$_inst_dd id2
where id2.dd_table_id = cd.dd_table_id
and id2.fds_inst_id = fi2.fds_inst_id)
union
/*clause for the base level minus the class and inst levels*/
select bd.dd_table_name,NULL,NULL,fc.fds_class_name,fi.fds_inst_name,
bd.dd_table_desc
from hs$_base_dd bd, hs$_fds_class fc, hs$_fds_inst fi
where fi.fds_class_id = fc.fds_class_id
and not exists
(select 1 from hs$_class_dd cd2
where cd2.dd_table_id = bd.dd_table_id
and cd2.fds_class_id = fc.fds_class_id)
and not exists
(select 1 from hs$_inst_dd id2
where id2.dd_table_id = bd.dd_table_id
and id2.fds_inst_id = fi.fds_inst_id);
grant select on hs_all_dd to hs_admin_select_role;
create or replace public synonym hs_all_dd for hs_all_dd;
--
--#############################################################################
--
--#############################################################################
--
-- HS_ALL_INITS
-- This view shows all of the init values for a given class and inst. Inst
-- level inits override inits defined at the class level.
create or replace view hs_all_inits
(init_value_name,init_value,init_value_type,fds_class_name,
fds_inst_name) as
/*this clause for the inst level inits*/
select i.init_value_name,i.init_value,i.init_value_type,fc.fds_class_name,
fi.fds_inst_name
from hs$_inst_init i, hs$_fds_class fc, hs$_fds_inst fi
where i.fds_inst_id = fi.fds_inst_id
and fi.fds_class_id = fc.fds_class_id
union
/*this clause for the class level inits*/
select c.init_value_name,c.init_value,c.init_value_type,fc.fds_class_name,
fi.fds_inst_name
from hs$_class_init c, hs$_fds_class fc, hs$_fds_inst fi
where fc.fds_class_id = fi.fds_class_id
and fc.fds_class_id = c.fds_class_id
and not exists
(select 1 from hs$_inst_init i
where i.fds_inst_id = fi.fds_inst_id
and i.init_value_name = c.init_value_name);
grant select on hs_all_inits to hs_admin_select_role;
create or replace public synonym hs_all_inits for hs_all_inits;
-- For future use:
-- Maintaining timestamps for date of last use of agents
-- with a particular FDS class and version will permit
-- use of a utility program to automatically purge data from the DD
-- for agents no longer in use.
create table hs$_fds_class_date(
fds_class_id number not null,
constraint hs$_fds_class_date_uk1 unique (fds_class_id),
fds_class_date date);
create or replace view hs_fds_class_date
(fds_class_name, fds_class_date, fds_class_id)
as select fc.fds_class_name, fd.fds_class_date, fc.fds_class_id
from hs$_fds_class fc, hs$_fds_class_date fd
where fc.fds_class_id = fd.fds_class_id;
grant select on hs_fds_class_date to hs_admin_select_role;
create or replace public synonym hs_fds_class_date for hs_fds_class_date;
-- Install the dbms_hs.package
@@dbmshs
@@prvths.plb
-- Install the dbms_hs_bulk_load package
@@dbmshsld
@@prvthsld.plb
-- Install base capability and DD translation definitions.
-- These are required at all times for reference by the kernel
-- and by dbms_hs functions.
begin
/*-------------------------------*/
/* Base capability definitions */
/*-------------------------------*/
dbms_hs.replace_base_caps(1, 1, 'op1 > op2');
dbms_hs.replace_base_caps(2, 2, 'op1 < op2');
dbms_hs.replace_base_caps(3, 3, 'op1 >= op2');
dbms_hs.replace_base_caps(4, 4, 'op1 <= op2');
dbms_hs.replace_base_caps(5, 5, 'op1 = op2');
dbms_hs.replace_base_caps(6, 6, 'op1 <> op2');
dbms_hs.replace_base_caps(7, 7, 'INTERSECT');
dbms_hs.replace_base_caps(8, 8, 'UNION');
dbms_hs.replace_base_caps(9, 9, 'MINUS');
dbms_hs.replace_base_caps(10, 10, 'op1 + op2 (arithmetic)');
dbms_hs.replace_base_caps(11, 11, 'op1 - op2 (arithmetic)');
dbms_hs.replace_base_caps(12, 12, 'op1 * op2 (arithmetic)');
dbms_hs.replace_base_caps(13, 13, 'op1 / op2 (arithmetic)');
dbms_hs.replace_base_caps(14, 14, '-op1 (arithmetic)');
dbms_hs.replace_base_caps(15, 15, 'AVG(op1)');
dbms_hs.replace_base_caps(16, 16, 'AVG(op1, op2)');
dbms_hs.replace_base_caps(17, 17, 'SUM(op1)');
dbms_hs.replace_base_caps(18, 18, 'SUM(op1, op2)');
dbms_hs.replace_base_caps(19, 19, 'COUNT(op1)');
dbms_hs.replace_base_caps(20, 20, 'COUNT(op1, op2)');
dbms_hs.replace_base_caps(21, 21, 'MIN(op1)');
dbms_hs.replace_base_caps(22, 22, 'MIN(op1, op2)');
dbms_hs.replace_base_caps(23, 23, 'MAX(op1)');
dbms_hs.replace_base_caps(24, 24, 'MAX(op1, op2)');
dbms_hs.replace_base_caps(25, 25, 'DESC (descending)');
dbms_hs.replace_base_caps(26, 26, 'TO_NUMBER(op1)');
dbms_hs.replace_base_caps(27, 27, 'TO_NUMBER(op1, op2)');
dbms_hs.replace_base_caps(28, 28, 'TO_NUMBER(op1, op2, op3)');
dbms_hs.replace_base_caps(29, 29, 'TO_CHAR(op1)');
dbms_hs.replace_base_caps(30, 30, 'TO_CHAR(op1, op2)');
dbms_hs.replace_base_caps(31, 31, 'TO_CHAR(op1, op2, op3)');
dbms_hs.replace_base_caps(32, 32, 'NVL(op1, op2)');
dbms_hs.replace_base_caps(33, 33, 'CHARTOROWID(op1)');
dbms_hs.replace_base_caps(34, 34, 'ROWIDTOCHAR(op1)');
dbms_hs.replace_base_caps(35, 35, 'op1 LIKE op2');
dbms_hs.replace_base_caps(36, 36, 'op1 NOT LIKE op2');
dbms_hs.replace_base_caps(37, 37, 'op1 || op2');
dbms_hs.replace_base_caps(38, 38, 'SUBSTR(op1, op2)');
dbms_hs.replace_base_caps(39, 39, 'SUBSTR(op1, op2, op3)');
dbms_hs.replace_base_caps(40, 40, 'LENGTH(op1)');
dbms_hs.replace_base_caps(41, 41, 'INSTR(op1, op2)');
dbms_hs.replace_base_caps(42, 42, 'INSTR(op1, op2, op3)');
dbms_hs.replace_base_caps(43, 43, 'INSTR(op1, op2, op3, op4)');
dbms_hs.replace_base_caps(44, 44, 'LOWER(op1)');
dbms_hs.replace_base_caps(45, 45, 'UPPER(op1)');
dbms_hs.replace_base_caps(46, 46, 'ASCII(op1)');
dbms_hs.replace_base_caps(47, 47, 'CHR(op1)');
dbms_hs.replace_base_caps(48, 48, 'SOUNDEX(op1)');
dbms_hs.replace_base_caps(49, 49, 'ROUND(op1)');
dbms_hs.replace_base_caps(50, 50, 'ROUND(op1, op2)');
dbms_hs.replace_base_caps(51, 51, 'TRUNC(op1)');
dbms_hs.replace_base_caps(52, 52, 'TRUNC(op1, op2)');
dbms_hs.replace_base_caps(53, 53, 'MOD(op1, op2)');
dbms_hs.replace_base_caps(54, 54, 'ABS(op1)');
dbms_hs.replace_base_caps(55, 55, 'SIGN(op1)');
dbms_hs.replace_base_caps(56, 56, 'VSIZE(op1)');
dbms_hs.replace_base_caps(57, 57, 'op1 IS NULL');
dbms_hs.replace_base_caps(58, 58, 'op1 IS NOT NULL');
dbms_hs.replace_base_caps(59, 59, 'op1 + op2 (date + number)');
dbms_hs.replace_base_caps(60, 60, 'op1 - op2 (date - number)');
dbms_hs.replace_base_caps(61, 61, 'op1 - op2 (date - date)');
dbms_hs.replace_base_caps(62, 62, 'ADD_MONTHS(op1, op2)');
dbms_hs.replace_base_caps(63, 63, 'MONTHS_BETWEEN(op1, op2)');
dbms_hs.replace_base_caps(64, 64, 'TO_DATE(op1)');
dbms_hs.replace_base_caps(65, 65, 'TO_DATE(op1, op2)');
dbms_hs.replace_base_caps(66, 66, 'TO_DATE(op1, op2, op3)');
dbms_hs.replace_base_caps(67, 67, 'SYSDATE');
dbms_hs.replace_base_caps(68, 68, 'LAST_DAY(op1)');
dbms_hs.replace_base_caps(69, 69, 'NEW_TIME(op1, op2, op3)');
dbms_hs.replace_base_caps(70, 70, 'NEXT_DAY(op1, op2)');
dbms_hs.replace_base_caps(71, 71, 'Internal date-related conversion');
dbms_hs.replace_base_caps(72, 72, 'Internal date-related conversion');
dbms_hs.replace_base_caps(73, 73, 'Internal date-related conversion');
dbms_hs.replace_base_caps(74, 74, 'TO_CHAR(op1) (date to string');
dbms_hs.replace_base_caps(75, 75, 'TO_CHAR(op1, op2) (date to string)');
dbms_hs.replace_base_caps(76, 76, 'TO_CHAR(op1, op2, op3) date to str');
dbms_hs.replace_base_caps(77, 77, '');
dbms_hs.replace_base_caps(78, 78, '');
dbms_hs.replace_base_caps(79, 79, '');
dbms_hs.replace_base_caps(80, 80, '');
dbms_hs.replace_base_caps(81, 81, '');
dbms_hs.replace_base_caps(82, 82, '');
dbms_hs.replace_base_caps(83, 83, '');
dbms_hs.replace_base_caps(84, 84, '');
dbms_hs.replace_base_caps(85, 85, '');
dbms_hs.replace_base_caps(86, 86, '');
dbms_hs.replace_base_caps(87, 87, '');
dbms_hs.replace_base_caps(88, 88, '');
dbms_hs.replace_base_caps(89, 89, '');
dbms_hs.replace_base_caps(90, 90, '');
dbms_hs.replace_base_caps(91, 91, '');
dbms_hs.replace_base_caps(92, 92, 'DUMP(op1)');
dbms_hs.replace_base_caps(93, 93, 'DUMP(op1, op2)');
dbms_hs.replace_base_caps(94, 94, 'DUMP(op1, op2, op3)');
dbms_hs.replace_base_caps(95, 95, 'DUMP(op1, op2, op3, op4)');
dbms_hs.replace_base_caps(96, 96, '');
dbms_hs.replace_base_caps(97, 97, 'ROUND(op1) (date)');
dbms_hs.replace_base_caps(98, 98, 'ROUND(op1, op2) (date)');
dbms_hs.replace_base_caps(99, 99, 'TRUNC(op1) (date)');
dbms_hs.replace_base_caps(100, 100, 'TRUNC(op1, op2) (date)');
dbms_hs.replace_base_caps(101, 101, 'FLOOR(op1)');
dbms_hs.replace_base_caps(102, 102, 'CEIL(op1)');
dbms_hs.replace_base_caps(103, 103, 'DECODE(op1, op2, op3)');
dbms_hs.replace_base_caps(104, 104, 'DECODE(op1, op2, op3, op4)');
dbms_hs.replace_base_caps(105, 105, 'DECODE');
dbms_hs.replace_base_caps(106, 106, 'LPAD(op1, op2)');
dbms_hs.replace_base_caps(107, 107, 'LPAD(op1, op2, op3)');
dbms_hs.replace_base_caps(108, 108, 'RPAD(op1, op2)');
dbms_hs.replace_base_caps(109, 109, 'RPAD(op1, op2, op3)');
dbms_hs.replace_base_caps(110, 110, '');
dbms_hs.replace_base_caps(111, 111, 'POWER(op1, op2)');
dbms_hs.replace_base_caps(112, 112, '');
dbms_hs.replace_base_caps(113, 113, '');
dbms_hs.replace_base_caps(114, 114, '');
dbms_hs.replace_base_caps(115, 115, '');
dbms_hs.replace_base_caps(116, 116, '');
dbms_hs.replace_base_caps(117, 117, '');
dbms_hs.replace_base_caps(118, 118, 'INITCAP(op1)');
dbms_hs.replace_base_caps(119, 119, 'TRANSLATE(op1, op2, op3)');
dbms_hs.replace_base_caps(120, 120, 'LTRIM(op1)');
dbms_hs.replace_base_caps(121, 121, 'LTRIM(op1, op2)');
dbms_hs.replace_base_caps(122, 122, 'RTRIM(op1)');
dbms_hs.replace_base_caps(123, 123, 'RTRIM(op1, op2)');
dbms_hs.replace_base_caps(124, 124, 'GREATEST(op1, op2)');
dbms_hs.replace_base_caps(125, 125, 'GREATEST');
dbms_hs.replace_base_caps(126, 126, 'LEAST(op1, op2)');
dbms_hs.replace_base_caps(127, 127, 'LEAST');
dbms_hs.replace_base_caps(128, 128, 'SQRT(op1)');
dbms_hs.replace_base_caps(129, 129, 'VARIANCE(op1)');
dbms_hs.replace_base_caps(130, 130, 'VARIANCE(op1, op2)');
dbms_hs.replace_base_caps(131, 131, 'STDDEV(op1)');
dbms_hs.replace_base_caps(132, 132, 'STDDEV(op1, op2)');
dbms_hs.replace_base_caps(133, 133, 'op1 LIKE op2 (indexed column)');
dbms_hs.replace_base_caps(134, 134, 'RAWTOHEX(op1)');
dbms_hs.replace_base_caps(135, 135, 'HEXTORAW(op1)');
dbms_hs.replace_base_caps(136, 136, '');
dbms_hs.replace_base_caps(137, 137, 'NOT NVL(op1, op2)');
dbms_hs.replace_base_caps(138, 138, 'USERENV(op1)');
dbms_hs.replace_base_caps(139, 139, 'MERGE$ACTIONS');
dbms_hs.replace_base_caps(140, 140, '');
dbms_hs.replace_base_caps(141, 141, 'TO_CHAR(op1), (special case)');
dbms_hs.replace_base_caps(142, 142, '');
dbms_hs.replace_base_caps(143, 143, 'BITAND(op1, op2)');
dbms_hs.replace_base_caps(144, 144, 'CONVERT(op1, op2)');
dbms_hs.replace_base_caps(145, 145, 'CONVERT(op1, op2, op3)');
dbms_hs.replace_base_caps(146, 146, 'REPLACE(op1, op2)');
dbms_hs.replace_base_caps(147, 147, 'REPLACE(op1, op2, op3)');
dbms_hs.replace_base_caps(148, 148, 'NLSSORT(op1)');
dbms_hs.replace_base_caps(149, 149, 'NLSSORT(op1, op2)');
dbms_hs.replace_base_caps(150, 150, '');
dbms_hs.replace_base_caps(151, 151, '');
dbms_hs.replace_base_caps(152, 152, '');
dbms_hs.replace_base_caps(153, 153, 'op1 LIKE op2 ESCAPE op3');
dbms_hs.replace_base_caps(154, 154, 'op1 NOT LIKE op2 ESCAPE op3');
dbms_hs.replace_base_caps(155, 155, 'UNION ALL');
dbms_hs.replace_base_caps(156, 156, 'COS(op1)');
dbms_hs.replace_base_caps(157, 157, 'SIN(op1)');
dbms_hs.replace_base_caps(158, 158, 'TAN(op1)');
dbms_hs.replace_base_caps(159, 159, 'COSH(op1)');
dbms_hs.replace_base_caps(160, 160, 'SINH(op1)');
dbms_hs.replace_base_caps(161, 161, 'TANH(op1)');
dbms_hs.replace_base_caps(162, 162, 'EXP(op1)');
dbms_hs.replace_base_caps(163, 163, 'LN(op1)');
dbms_hs.replace_base_caps(164, 164, 'LOG(op1)');
dbms_hs.replace_base_caps(165, 165, '');
dbms_hs.replace_base_caps(166, 166, 'op1 > op2');
dbms_hs.replace_base_caps(167, 167, 'op1 < op2');
dbms_hs.replace_base_caps(168, 168, 'op1 >= op2');
dbms_hs.replace_base_caps(169, 169, 'op1 <= op2');
dbms_hs.replace_base_caps(170, 170, 'op1 = op2');
dbms_hs.replace_base_caps(171, 171, 'op1 <> op2');
dbms_hs.replace_base_caps(172, 172, '');
dbms_hs.replace_base_caps(173, 173, '');
dbms_hs.replace_base_caps(174, 174, 'TO_SINGLE_BYTE(op1');
dbms_hs.replace_base_caps(175, 175, 'TO_MULTI_BYTE(op1)');
dbms_hs.replace_base_caps(176, 176, 'NLS_LOWER(op1)');
dbms_hs.replace_base_caps(177, 177, 'NLS_UPPER(op1)');
dbms_hs.replace_base_caps(178, 178, 'NLS_INITCAP(op1)');
dbms_hs.replace_base_caps(179, 179, 'INSTRB(op1, op2)');
dbms_hs.replace_base_caps(180, 180, 'INSTRB(op1, op2, op3)');
dbms_hs.replace_base_caps(181, 181, 'INSTRB(op1, op2, op3, op4)');
dbms_hs.replace_base_caps(182, 182, 'LENGTHB(op1)');
dbms_hs.replace_base_caps(183, 183, 'SUBSTRB(op1, op2)');
dbms_hs.replace_base_caps(184, 184, 'SUBSTRB(op1, op2, op3)');
dbms_hs.replace_base_caps(185, 185, '');
dbms_hs.replace_base_caps(186, 186, '');
dbms_hs.replace_base_caps(187, 187, 'XMLPARSE(..)');
dbms_hs.replace_base_caps(188, 188, '');
dbms_hs.replace_base_caps(189, 189, '');
dbms_hs.replace_base_caps(190, 190, '');
dbms_hs.replace_base_caps(191, 191, '');
dbms_hs.replace_base_caps(192, 192, '');
dbms_hs.replace_base_caps(193, 193, '');
dbms_hs.replace_base_caps(194, 194, 'LUB(op1)');
dbms_hs.replace_base_caps(195, 195, 'GLB(op1)');
dbms_hs.replace_base_caps(196, 196, 'LEAST_UB(op1, op2)');
dbms_hs.replace_base_caps(197, 197, 'LEAST_UB');
dbms_hs.replace_base_caps(198, 198, 'GREATEST_LB(op1, op2)');
dbms_hs.replace_base_caps(199, 199, 'GREATEST_LB');
dbms_hs.replace_base_caps(200, 200, '');
dbms_hs.replace_base_caps(201, 201, '');
dbms_hs.replace_base_caps(202, 202, '');
dbms_hs.replace_base_caps(203, 203, '');
dbms_hs.replace_base_caps(204, 204, '');
dbms_hs.replace_base_caps(205, 205, '');
dbms_hs.replace_base_caps(206, 206, '');
dbms_hs.replace_base_caps(207, 207, 'NVL2(op1, op2, op3)');
dbms_hs.replace_base_caps(208, 208, 'REVERSE(op1)');
dbms_hs.replace_base_caps(209, 209, 'NLS_LOWER(op1, op2)');
dbms_hs.replace_base_caps(210, 210, 'NLS_UPPER(op1, op2)');
dbms_hs.replace_base_caps(211, 211, 'NLS_INITCAP(op1, op2)');
dbms_hs.replace_base_caps(212, 212, '');
dbms_hs.replace_base_caps(213, 213, '');
dbms_hs.replace_base_caps(214, 214, '');
dbms_hs.replace_base_caps(215, 215, '');
dbms_hs.replace_base_caps(216, 216, '');
dbms_hs.replace_base_caps(217, 217, 'op1 > op2');
dbms_hs.replace_base_caps(218, 218, 'op1 < op2');
dbms_hs.replace_base_caps(219, 219, 'op1 >= op2');
dbms_hs.replace_base_caps(220, 220, 'op1 <= op2');
dbms_hs.replace_base_caps(221, 221, 'op1 = op2');
dbms_hs.replace_base_caps(222, 222, 'op1 <> op2');
dbms_hs.replace_base_caps(223, 223, '');
dbms_hs.replace_base_caps(224, 224, '');
dbms_hs.replace_base_caps(225, 225, '');
dbms_hs.replace_base_caps(226, 226, '');
dbms_hs.replace_base_caps(227, 227, '');
dbms_hs.replace_base_caps(228, 228, '');
dbms_hs.replace_base_caps(229, 229, '');
dbms_hs.replace_base_caps(230, 230, '');
dbms_hs.replace_base_caps(231, 231, '');
dbms_hs.replace_base_caps(232, 232, 'OPTPLS');
dbms_hs.replace_base_caps(233, 233, 'ASIN(op1)');
dbms_hs.replace_base_caps(234, 234, 'ACOS(op1)');
dbms_hs.replace_base_caps(235, 235, 'ATAN(op1)');
dbms_hs.replace_base_caps(236, 236, 'ATAN2(op1, op2)');
dbms_hs.replace_base_caps(237, 237, '');
dbms_hs.replace_base_caps(238, 238, 'SYS_OP_ATG(op1, op2, op3, op4)');
dbms_hs.replace_base_caps(239, 239, '');
dbms_hs.replace_base_caps(240, 240, '');
dbms_hs.replace_base_caps(241, 241, '');
dbms_hs.replace_base_caps(242, 242, '');
dbms_hs.replace_base_caps(243, 243, 'CURSOR(op1)');
dbms_hs.replace_base_caps(244, 244, '');
dbms_hs.replace_base_caps(245, 245, 'DEREF(op1)');
dbms_hs.replace_base_caps(246, 246, 'BLOB()');
dbms_hs.replace_base_caps(247, 247, 'CLOB()');
dbms_hs.replace_base_caps(248, 248, '');
dbms_hs.replace_base_caps(249, 249, '');
dbms_hs.replace_base_caps(250, 250, '');
dbms_hs.replace_base_caps(251, 251, '');
dbms_hs.replace_base_caps(252, 252, 'SYS_OP_MOID(op1)');
dbms_hs.replace_base_caps(253, 253, 'MAKE_REF(op1)');
dbms_hs.replace_base_caps(254, 254, 'SYS_OP_NIX(op1, op2)');
dbms_hs.replace_base_caps(255, 255, 'SYS_OP_DUMP(op1)');
dbms_hs.replace_base_caps(256, 256, '');
dbms_hs.replace_base_caps(257, 257, 'REFTOHEX(op1)');
dbms_hs.replace_base_caps(258, 258, '');
dbms_hs.replace_base_caps(259, 259, '');
dbms_hs.replace_base_caps(260, 260, 'SYS_OP_TOSETID(op1)');
dbms_hs.replace_base_caps(261, 261, '');
dbms_hs.replace_base_caps(262, 262, '');
dbms_hs.replace_base_caps(263, 263, '');
dbms_hs.replace_base_caps(264, 264, '');
dbms_hs.replace_base_caps(265, 265, '');
dbms_hs.replace_base_caps(266, 266, '');
dbms_hs.replace_base_caps(267, 267, '');
dbms_hs.replace_base_caps(268, 268, 'op1 IS DANGLING');
dbms_hs.replace_base_caps(269, 269, 'op1 IS NOT DANGLING');
dbms_hs.replace_base_caps(270, 270, 'SYS_OP_R20(op1)');
dbms_hs.replace_base_caps(271, 271, 'EMPTY_BLOB()');
dbms_hs.replace_base_caps(272, 272, 'EMPTY_CLOB()');
dbms_hs.replace_base_caps(273, 273, '');
dbms_hs.replace_base_caps(274, 274, '');
dbms_hs.replace_base_caps(275, 275, '');
dbms_hs.replace_base_caps(276, 276, '');
dbms_hs.replace_base_caps(277, 277, '');
dbms_hs.replace_base_caps(278, 278, 'SYS_OP_RMTD(op1, op2, op3)');
dbms_hs.replace_base_caps(279, 279, '');
dbms_hs.replace_base_caps(280, 280, 'SYS_OP_OIDVALUE(op1, op2, op3)');
dbms_hs.replace_base_caps(281, 281, '');
dbms_hs.replace_base_caps(282, 282, 'BFILENAME(op1, op2)');
dbms_hs.replace_base_caps(283, 283, 'CSCONVERT(op1, op2)');
dbms_hs.replace_base_caps(284, 284, 'NLS_CHARSET_NAME(op1)');
dbms_hs.replace_base_caps(285, 285, 'NLS_CHARSET_ID(op1)');
dbms_hs.replace_base_caps(286, 286, '');
dbms_hs.replace_base_caps(287, 287, 'SYS_OP_LSVI(op1, op2, op3)');
dbms_hs.replace_base_caps(288, 288, '');
dbms_hs.replace_base_caps(289, 289, '');
dbms_hs.replace_base_caps(290, 290, '');
dbms_hs.replace_base_caps(291, 291, '');
dbms_hs.replace_base_caps(292, 292, 'SYS_OP_MSR(op1)');
dbms_hs.replace_base_caps(293, 293, 'SYS_OP_CSR(op1)');
dbms_hs.replace_base_caps(294, 294, '');
dbms_hs.replace_base_caps(295, 295, '');
dbms_hs.replace_base_caps(296, 296, 'TRIM(op1)');
dbms_hs.replace_base_caps(297, 297, 'TRIM(op1 FROM op2)');
dbms_hs.replace_base_caps(298, 298, 'TRIM(LEADING op1)');
dbms_hs.replace_base_caps(299, 299, 'TRIM(LEADING op1 FROM op2)');
dbms_hs.replace_base_caps(300, 300, 'TRIM(TRAILING op1)');
dbms_hs.replace_base_caps(301, 301, 'TRIM(TRAILING op1 FROM op2)');
dbms_hs.replace_base_caps(302, 302, 'SYS_OP_RPB(op1)');
dbms_hs.replace_base_caps(303, 303, '');
dbms_hs.replace_base_caps(304, 304, 'SYS_OP_DESCEND(op1)');
dbms_hs.replace_base_caps(305, 305, '');
dbms_hs.replace_base_caps(306, 306, '');
dbms_hs.replace_base_caps(307, 307, '');
dbms_hs.replace_base_caps(308, 308, '');
dbms_hs.replace_base_caps(309, 309, '');
dbms_hs.replace_base_caps(310, 310, '');
dbms_hs.replace_base_caps(311, 311, '');
dbms_hs.replace_base_caps(312, 312, '');
dbms_hs.replace_base_caps(313, 313, '');
dbms_hs.replace_base_caps(314, 314, '');
dbms_hs.replace_base_caps(315, 315, '');
dbms_hs.replace_base_caps(316, 316, '');
dbms_hs.replace_base_caps(317, 317, '');
dbms_hs.replace_base_caps(318, 318, '');
dbms_hs.replace_base_caps(319, 319, 'SYS_GUID()');
dbms_hs.replace_base_caps(320, 320, 'EXTRACT(YEAR FROM op2)');
dbms_hs.replace_base_caps(321, 321, 'EXTRACT(MONTH FROM op2)');
dbms_hs.replace_base_caps(322, 322, 'EXTRACT(DAY FROM op2)');
dbms_hs.replace_base_caps(323, 323, 'EXTRACT(HOUR FROM op2)');
dbms_hs.replace_base_caps(324, 324, 'EXTRACT(MINUTE FROM op2)');
dbms_hs.replace_base_caps(325, 325, 'EXTRACT(SECOND FROM op2)');
dbms_hs.replace_base_caps(326, 326, 'EXTRACT(TIMEZONE_HOUR FROM op2)');
dbms_hs.replace_base_caps(327, 327, 'EXTRACT(TIMEZONE_MINUTE FROM op2)');
dbms_hs.replace_base_caps(328, 328, '');
dbms_hs.replace_base_caps(329, 329, '');
dbms_hs.replace_base_caps(330, 330, '');
dbms_hs.replace_base_caps(331, 331, '');
dbms_hs.replace_base_caps(332, 332, '');
dbms_hs.replace_base_caps(333, 333, '');
dbms_hs.replace_base_caps(334, 334, '');
dbms_hs.replace_base_caps(335, 335, '');
dbms_hs.replace_base_caps(336, 336, '');
dbms_hs.replace_base_caps(337, 337, '');
dbms_hs.replace_base_caps(338, 338, '');
dbms_hs.replace_base_caps(339, 339, '');
dbms_hs.replace_base_caps(340, 340, '');
dbms_hs.replace_base_caps(341, 341, '');
dbms_hs.replace_base_caps(342, 342, '');
dbms_hs.replace_base_caps(343, 343, '');
dbms_hs.replace_base_caps(344, 344, '');
dbms_hs.replace_base_caps(345, 345, '');
dbms_hs.replace_base_caps(346, 346, '');
dbms_hs.replace_base_caps(347, 347, '');
dbms_hs.replace_base_caps(348, 348, '');
dbms_hs.replace_base_caps(349, 349, '');
dbms_hs.replace_base_caps(350, 350, '');
dbms_hs.replace_base_caps(351, 351, '');
dbms_hs.replace_base_caps(352, 352, 'TO_TIME(op1)');
dbms_hs.replace_base_caps(353, 353, 'TO_TIME(op1, op2)');
dbms_hs.replace_base_caps(354, 354, 'TO_TIME(op1, op2, op3)');
dbms_hs.replace_base_caps(355, 355, 'TO_TIME_TZ(op1)');
dbms_hs.replace_base_caps(356, 356, 'TO_TIME_TZ(op1, op2)');
dbms_hs.replace_base_caps(357, 357, 'TO_TIME_TZ(op1, op2, op3)');
dbms_hs.replace_base_caps(358, 358, 'TO_TIMESTAMP(op1)');
dbms_hs.replace_base_caps(359, 359, 'TO_TIMESTAMP(op1, op2)');
dbms_hs.replace_base_caps(360, 360, 'TO_TIMESTAMP(op1, op2, op3)');
dbms_hs.replace_base_caps(361, 361, 'TO_TIMESTAMP_TZ(op1)');
dbms_hs.replace_base_caps(362, 362, 'TO_TIMESTAMP_TZ(op1, op2)');
dbms_hs.replace_base_caps(363, 363, 'TO_TIMESTAMP_TZ(op1, op2, op3)');
dbms_hs.replace_base_caps(364, 364, 'TO_YMINTERVAL(op1)');
dbms_hs.replace_base_caps(365, 365, 'TO_DSINTERVAL(op1)');
dbms_hs.replace_base_caps(366, 366, 'TO_DSINTERVAL(op1, op2)');
dbms_hs.replace_base_caps(367, 367, 'NUMTOYMINTERVAL(op1, op2)');
dbms_hs.replace_base_caps(368, 368, 'NUMTODSINTERVAL(op1, op2)');
dbms_hs.replace_base_caps(369, 369, 'op1 + op2');
dbms_hs.replace_base_caps(370, 370, 'op1 - op2');
dbms_hs.replace_base_caps(371, 371, 'op1 - op2');
dbms_hs.replace_base_caps(372, 372, 'op1 + op2');
dbms_hs.replace_base_caps(373, 373, 'op1 - op2');
dbms_hs.replace_base_caps(374, 374, 'op1 * op2');
dbms_hs.replace_base_caps(375, 375, 'op1 / op2');
dbms_hs.replace_base_caps(376, 376, 'op1 AT TIME ZONE op2');
dbms_hs.replace_base_caps(377, 377, '(op1, op2) OVERLAPS (op3, op4)');
dbms_hs.replace_base_caps(378, 378, 'NOT((op1, op2) OVERLAPS (op3, op4))');
dbms_hs.replace_base_caps(379, 379, 'CURRENT_DATE');
dbms_hs.replace_base_caps(380, 380, 'CURRENT_TIME(op1)');
dbms_hs.replace_base_caps(381, 381, 'CURRENT_TIMESTAMP(op1)');
dbms_hs.replace_base_caps(382, 382, 'LOCALTIME(op1)');
dbms_hs.replace_base_caps(383, 383, 'LOCALTIMESTAMP(op1)');
dbms_hs.replace_base_caps(384, 384, 'SYSTIMESTAMP(op1)');
dbms_hs.replace_base_caps(385, 385, '');
dbms_hs.replace_base_caps(386, 386, '');
dbms_hs.replace_base_caps(387, 387, '');
dbms_hs.replace_base_caps(388, 388, '');
dbms_hs.replace_base_caps(389, 389, '');
dbms_hs.replace_base_caps(390, 390, '');
dbms_hs.replace_base_caps(391, 391, 'CAST(op1 AS op2)');
dbms_hs.replace_base_caps(392, 392, 'SYS_CONTEXT(op1, op2)');
dbms_hs.replace_base_caps(393, 393, 'SYS_EXTRACT_UTC(op1)');
dbms_hs.replace_base_caps(394, 394, '');
dbms_hs.replace_base_caps(395, 395, '');
dbms_hs.replace_base_caps(396, 396, 'GROUPING(op1)');
dbms_hs.replace_base_caps(397, 397, '');
dbms_hs.replace_base_caps(398, 398, '');
dbms_hs.replace_base_caps(399, 399, '');
dbms_hs.replace_base_caps(400, 400, '');
dbms_hs.replace_base_caps(401, 401, 'SYS_OP_MAP_NONNULL(op1)');
dbms_hs.replace_base_caps(402, 402, '');
dbms_hs.replace_base_caps(403, 403, '');
dbms_hs.replace_base_caps(404, 404, '');
dbms_hs.replace_base_caps(405, 405, '');
dbms_hs.replace_base_caps(406, 406, '');
dbms_hs.replace_base_caps(407, 407, '');
dbms_hs.replace_base_caps(408, 408, '');
dbms_hs.replace_base_caps(409, 409, '');
dbms_hs.replace_base_caps(410, 410, '');
dbms_hs.replace_base_caps(411, 411, 'SUM(op1)');
dbms_hs.replace_base_caps(412, 412, 'AVG(op1)');
dbms_hs.replace_base_caps(413, 413, 'COUNT(op1)');
dbms_hs.replace_base_caps(414, 414, 'COUNT(op1, op2)');
dbms_hs.replace_base_caps(415, 415, 'VARIANCE(op1)');
dbms_hs.replace_base_caps(416, 416, 'VARIANCE(op1, op2)');
dbms_hs.replace_base_caps(417, 417, 'STDDEV(op1)');
dbms_hs.replace_base_caps(418, 418, 'STDDEV(op1, op2)');
dbms_hs.replace_base_caps(419, 419, 'MIN(op1)');
dbms_hs.replace_base_caps(420, 420, 'MAX(op1)');
dbms_hs.replace_base_caps(421, 421, 'FIRST_VALUE(op1)');
dbms_hs.replace_base_caps(422, 422, 'LAST_VALUE(op1)');
dbms_hs.replace_base_caps(423, 423, 'LAG(op1)');
dbms_hs.replace_base_caps(424, 424, 'LAG(op1, op2)');
dbms_hs.replace_base_caps(425, 425, 'LAG(op1, op2, op3)');
dbms_hs.replace_base_caps(426, 426, 'LEAD(op1)');
dbms_hs.replace_base_caps(427, 427, 'LEAD(op1, op2)');
dbms_hs.replace_base_caps(428, 428, 'LEAD(op1, op2, op3)');
dbms_hs.replace_base_caps(429, 429, 'RANK()');
dbms_hs.replace_base_caps(430, 430, 'DENSE_RANK()');
dbms_hs.replace_base_caps(431, 431, '');
dbms_hs.replace_base_caps(432, 432, 'NTILE()');
dbms_hs.replace_base_caps(433, 433, 'RATIO_TO_REPORT()');
dbms_hs.replace_base_caps(434, 434, 'ROW_NUMBER()');
dbms_hs.replace_base_caps(435, 435, '');
dbms_hs.replace_base_caps(436, 436, '');
dbms_hs.replace_base_caps(437, 437, 'op1 DESC');
dbms_hs.replace_base_caps(438, 438, 'op1 DESC NULLS LAST');
dbms_hs.replace_base_caps(439, 439, 'op1 ASC NULLS FIRST');
dbms_hs.replace_base_caps(440, 440, '');
dbms_hs.replace_base_caps(441, 441, '');
dbms_hs.replace_base_caps(442, 442, '');
dbms_hs.replace_base_caps(443, 443, '');
dbms_hs.replace_base_caps(444, 444, '');
dbms_hs.replace_base_caps(445, 445, '');
dbms_hs.replace_base_caps(446, 446, '');
dbms_hs.replace_base_caps(447, 447, '');
dbms_hs.replace_base_caps(448, 448, '');
dbms_hs.replace_base_caps(449, 449, '');
dbms_hs.replace_base_caps(450, 450, '');
dbms_hs.replace_base_caps(451, 451, '');
dbms_hs.replace_base_caps(452, 452, '');
dbms_hs.replace_base_caps(453, 453, '');
dbms_hs.replace_base_caps(454, 454, '');
dbms_hs.replace_base_caps(455, 455, '');
dbms_hs.replace_base_caps(456, 456, '');
dbms_hs.replace_base_caps(457, 457, '');
dbms_hs.replace_base_caps(458, 458, '');
dbms_hs.replace_base_caps(459, 459, '');
dbms_hs.replace_base_caps(460, 460, 'SESSIONTIMEZONE()');
dbms_hs.replace_base_caps(461, 461, '');
dbms_hs.replace_base_caps(462, 462, '');
dbms_hs.replace_base_caps(463, 463, '');
dbms_hs.replace_base_caps(464, 464, '');
dbms_hs.replace_base_caps(465, 465, '');
dbms_hs.replace_base_caps(466, 466, '');
dbms_hs.replace_base_caps(467, 467, '');
dbms_hs.replace_base_caps(468, 468, '');
dbms_hs.replace_base_caps(469, 469, '');
dbms_hs.replace_base_caps(470, 470, '');
dbms_hs.replace_base_caps(471, 471, '');
dbms_hs.replace_base_caps(472, 472, '');
dbms_hs.replace_base_caps(473, 473, '');
dbms_hs.replace_base_caps(474, 474, '');
dbms_hs.replace_base_caps(475, 475, '');
dbms_hs.replace_base_caps(476, 476, 'FROM_TZ(op1, op2)');
dbms_hs.replace_base_caps(477, 477, 'PATH(op1, op2)');
dbms_hs.replace_base_caps(478, 478, '');
dbms_hs.replace_base_caps(479, 479, '');
dbms_hs.replace_base_caps(480, 480, '');
dbms_hs.replace_base_caps(481, 481, '');
dbms_hs.replace_base_caps(482, 482, '');
dbms_hs.replace_base_caps(483, 483, '');
dbms_hs.replace_base_caps(484, 484, '');
dbms_hs.replace_base_caps(485, 485, '');
dbms_hs.replace_base_caps(486, 486, '');
dbms_hs.replace_base_caps(487, 487, '');
dbms_hs.replace_base_caps(488, 488, 'NULLIF(op1, op2)');
dbms_hs.replace_base_caps(489, 489, 'COALESCE(op1, op2)');
dbms_hs.replace_base_caps(490, 490, 'LENGTH(op1)');
dbms_hs.replace_base_caps(491, 491, 'LENGTHB(op1)');
dbms_hs.replace_base_caps(492, 492, 'SUBSTR(op1, op2)');
dbms_hs.replace_base_caps(493, 493, 'SUBSTR(op1, op2, op3)');
dbms_hs.replace_base_caps(494, 494, 'SUBSTRB(op1, op2)');
dbms_hs.replace_base_caps(495, 495, 'SUBSTRB(op1, op2, op3)');
dbms_hs.replace_base_caps(496, 496, 'INSTR(op1, op2)');
dbms_hs.replace_base_caps(497, 497, 'INSTR(op1, op2, op3)');
dbms_hs.replace_base_caps(498, 498, 'INSTR(op1, op2, op3, op4)');
dbms_hs.replace_base_caps(499, 499, 'INSTRB(op1, op2)');
dbms_hs.replace_base_caps(500, 500, 'INSTRB(op1, op2, op3)');
dbms_hs.replace_base_caps(501, 501, 'INSTRB(op1, op2, op3, op4)');
dbms_hs.replace_base_caps(502, 502, 'op1 || op2');
dbms_hs.replace_base_caps(503, 503, 'LPAD(op1, op2)');
dbms_hs.replace_base_caps(504, 504, 'LPAD(op1, op2, op3)');
dbms_hs.replace_base_caps(505, 505, 'RPAD(op1, op2)');
dbms_hs.replace_base_caps(506, 506, 'RPAD(op1, op2, op3)');
dbms_hs.replace_base_caps(507, 507, 'LTRIM(op1)');
dbms_hs.replace_base_caps(508, 508, 'LTRIM(op1, op2)');
dbms_hs.replace_base_caps(509, 509, 'RTRIM(op1)');
dbms_hs.replace_base_caps(510, 510, 'RTRIM(op1, op2)');
dbms_hs.replace_base_caps(511, 511, 'TRIM(op1)');
dbms_hs.replace_base_caps(512, 512, 'TRIM(op1 FROM op2)');
dbms_hs.replace_base_caps(513, 513, 'LOWER(op1)');
dbms_hs.replace_base_caps(514, 514, 'UPPER(op1)');
dbms_hs.replace_base_caps(515, 515, 'NLS_LOWER(op1)');
dbms_hs.replace_base_caps(516, 516, 'NLS_LOWER(op1, op2)');
dbms_hs.replace_base_caps(517, 517, 'NLS_UPPER(op1)');
dbms_hs.replace_base_caps(518, 518, 'NLS_UPPER(op1, op2)');
dbms_hs.replace_base_caps(519, 519, 'NVL(op1, op2)');
dbms_hs.replace_base_caps(520, 520, 'op1 LIKE op2');
dbms_hs.replace_base_caps(521, 521, 'op1 NOT LIKE op2');
dbms_hs.replace_base_caps(522, 522, 'REPLACE(op1, op2)');
dbms_hs.replace_base_caps(523, 523, 'REPLACE(op1, op2, op3)');
dbms_hs.replace_base_caps(524, 524, 'CLOB_TO_CHAR(op1)');
dbms_hs.replace_base_caps(525, 525, 'PERCENTILE_CONT(op1)');
dbms_hs.replace_base_caps(526, 526, 'PERCENTILE_DISC(op1)');
dbms_hs.replace_base_caps(527, 527, 'RANK(op1)');
dbms_hs.replace_base_caps(528, 528, 'DENSE_RANK(op1)');
dbms_hs.replace_base_caps(529, 529, 'PERCENT_RANK(op1)');
dbms_hs.replace_base_caps(530, 530, 'CUME_DIST(op1)');
dbms_hs.replace_base_caps(531, 531, 'First/Last function');
dbms_hs.replace_base_caps(532, 532, '');
dbms_hs.replace_base_caps(533, 533, 'WIDTH_BUCKETop1, op2, op3, op4)');
dbms_hs.replace_base_caps(534, 534, 'RANKM(op1)');
dbms_hs.replace_base_caps(535, 535, 'DENSE_RANKM(op1)');
dbms_hs.replace_base_caps(536, 536, 'PERCENT_RANKM(op1)');
dbms_hs.replace_base_caps(537, 537, 'CUME_DISTM(op1)');
dbms_hs.replace_base_caps(538, 538, 'FIRSTM(op1)');
dbms_hs.replace_base_caps(539, 539, 'PERCENTILE_CONT(op1)');
dbms_hs.replace_base_caps(540, 540, 'PERCENTILE_DISC(op1)');
dbms_hs.replace_base_caps(541, 541, '');
dbms_hs.replace_base_caps(542, 542, 'VECOR(op1, op2)');
dbms_hs.replace_base_caps(543, 543, 'VECXOR(op1, op2)');
dbms_hs.replace_base_caps(544, 544, 'VECAND(op1,op2)');
dbms_hs.replace_base_caps(545, 545, 'GROUPING_ID(...)');
dbms_hs.replace_base_caps(546, 546, 'GROUP_ID()');
dbms_hs.replace_base_caps(547, 547, 'BIN_TO_NUM(...)');
dbms_hs.replace_base_caps(548, 548, '');
dbms_hs.replace_base_caps(549, 549, '');
dbms_hs.replace_base_caps(550, 550, '');
dbms_hs.replace_base_caps(551, 551, '');
dbms_hs.replace_base_caps(552, 552, '');
dbms_hs.replace_base_caps(553, 553, '');
dbms_hs.replace_base_caps(554, 554, '');
dbms_hs.replace_base_caps(555, 555, '');
dbms_hs.replace_base_caps(556, 556, '');
dbms_hs.replace_base_caps(557, 557, '');
dbms_hs.replace_base_caps(558, 558, 'TZ_OFFSET(op1');
dbms_hs.replace_base_caps(559, 559, 'ADJ_DATE(?)');
dbms_hs.replace_base_caps(560, 560, 'SESSIONTZNAME');
dbms_hs.replace_base_caps(561, 561, '');
dbms_hs.replace_base_caps(562, 562, '');
dbms_hs.replace_base_caps(563, 563, 'ROWIDTONCHAR(op1)');
dbms_hs.replace_base_caps(564, 564, 'TO_NCHAR(op1)');
dbms_hs.replace_base_caps(565, 565, 'TO_NCHAR(op1,op2)');
dbms_hs.replace_base_caps(566, 566, 'TO_NCHAR(op1,op2,op3)');
dbms_hs.replace_base_caps(567, 567, 'RAWTONHEX(op1)');
dbms_hs.replace_base_caps(568, 568, 'NCHR(op1)');
dbms_hs.replace_base_caps(569, 569, '');
dbms_hs.replace_base_caps(570, 570, '');
dbms_hs.replace_base_caps(571, 571, '');
dbms_hs.replace_base_caps(572, 572, '');
dbms_hs.replace_base_caps(573, 573, 'COMPOSE(op1)');
dbms_hs.replace_base_caps(574, 574, 'DECOMPOSE(op1)');
dbms_hs.replace_base_caps(575, 575, 'ASCIISTR(op1)');
dbms_hs.replace_base_caps(576, 576, 'UNISTR(op1)');
dbms_hs.replace_base_caps(577, 577, 'LENGTH2(op1)');
dbms_hs.replace_base_caps(578, 578, 'LENGTH4(op1)');
dbms_hs.replace_base_caps(579, 579, 'LENGTHC(op1)');
dbms_hs.replace_base_caps(580, 580, 'INSTR2(op1,op2)');
dbms_hs.replace_base_caps(581, 581, 'INSTR2(op1,op2,op3)');
dbms_hs.replace_base_caps(582, 582, 'INSTR2(op1,op2,op3,op4)');
dbms_hs.replace_base_caps(583, 583, 'INSTR4(op1,op2)');
dbms_hs.replace_base_caps(584, 584, 'INSTR4(op1,op2,op3)');
dbms_hs.replace_base_caps(585, 585, 'INSTR4(op1,op2,op3,op4)');
dbms_hs.replace_base_caps(586, 586, 'INSTRC(op1,op2)');
dbms_hs.replace_base_caps(587, 587, 'INSTRC(op1,op2,op3)');
dbms_hs.replace_base_caps(588, 588, 'INSTRC(op1,op2,op3,op4)');
dbms_hs.replace_base_caps(589, 589, 'SUBSTR2(op1,op2)');
dbms_hs.replace_base_caps(590, 590, 'SUBSTR2(op1,op2,op3)');
dbms_hs.replace_base_caps(591, 591, 'SUBSTR4(op1,op2)');
dbms_hs.replace_base_caps(592, 592, 'SUBSTR4(op1,op2,op3)');
dbms_hs.replace_base_caps(593, 593, 'SUBSTRC(op1,op2)');
dbms_hs.replace_base_caps(594, 594, 'SUBSTRC(op1,op2,op3)');
dbms_hs.replace_base_caps(595, 595, 'op1 LIKE2 op2');
dbms_hs.replace_base_caps(596, 596, 'op1 NOT LIKE2 op2');
dbms_hs.replace_base_caps(597, 597, 'op1 LIKE2 op2 ESCAPE op3');
dbms_hs.replace_base_caps(598, 598, 'op1 NOT LIKE2 op2 ESCAPE op3');
dbms_hs.replace_base_caps(599, 599, 'op1 LIKE4 op2');
dbms_hs.replace_base_caps(600, 600, 'op1 NOT LIKE4 op2');
dbms_hs.replace_base_caps(601, 601, 'op1 LIKE4 op2 ESCAPE op3');
dbms_hs.replace_base_caps(602, 602, 'op1 NOT LIKE4 op2 ESCAPE op3');
dbms_hs.replace_base_caps(603, 603, 'op1 LIKEC op2');
dbms_hs.replace_base_caps(604, 604, 'op1 NOT LIKEC op2');
dbms_hs.replace_base_caps(605, 605, 'op1 LIKEC op2 ESCAPE op3');
dbms_hs.replace_base_caps(606, 606, 'op1 NOT LIKEC op2 ESCAPE op3');
dbms_hs.replace_base_caps(607, 607, '');
dbms_hs.replace_base_caps(608, 608, '');
dbms_hs.replace_base_caps(609, 609, '');
dbms_hs.replace_base_caps(610, 610, '');
dbms_hs.replace_base_caps(611, 611, 'CONVERT(op1, op2)');
dbms_hs.replace_base_caps(612, 612, 'CONVERT(op1, op2, op3)');
dbms_hs.replace_base_caps(613, 613, '');
dbms_hs.replace_base_caps(614, 614, '');
dbms_hs.replace_base_caps(615, 615, '');
dbms_hs.replace_base_caps(616, 616, '');
dbms_hs.replace_base_caps(5000, 5000, 'multicolumn: (a,b,c)=');
dbms_hs.replace_base_caps(5001, 5001, 'join');
dbms_hs.replace_base_caps(5002, 5002, 'outer join');
dbms_hs.replace_base_caps(5003, 5003, 'delimited IDs: "id"');
dbms_hs.replace_base_caps(5004, 5004, 'SELECT DISTINCT');
dbms_hs.replace_base_caps(5005, 5005, 'DISTINCT in aggregate functions');
dbms_hs.replace_base_caps(5006, 5006, 'ROWNUM');
dbms_hs.replace_base_caps(5007, 5007, 'subquery');
dbms_hs.replace_base_caps(5008, 5008, 'GROUP BY');
dbms_hs.replace_base_caps(5009, 5009, 'HAVING');
dbms_hs.replace_base_caps(5010, 5010, 'ORDER BY');
dbms_hs.replace_base_caps(5011, 5011, 'CONNECT BY');
dbms_hs.replace_base_caps(5012, 5012, 'START WITH');
dbms_hs.replace_base_caps(5013, 5013, 'WHERE');
dbms_hs.replace_base_caps(5014, 5014, 'callback');
dbms_hs.replace_base_caps(5015, 5015, 'add redundant local filters');
dbms_hs.replace_base_caps(5016, 5016, 'ROWID');
dbms_hs.replace_base_caps(5017, 5017, 'ANY');
dbms_hs.replace_base_caps(5018, 5018, 'ALL');
dbms_hs.replace_base_caps(5019, 5019, 'EXISTS');
dbms_hs.replace_base_caps(5020, 5020, 'NOT EXISTS');
dbms_hs.replace_base_caps(5021, 5021, 'nls parameters');
dbms_hs.replace_base_caps(5022, 5022, 'describe index');
dbms_hs.replace_base_caps(5023, 5023, 'distributed read consistency');
dbms_hs.replace_base_caps(5024, 5024, 'bundled calls');
dbms_hs.replace_base_caps(5025, 5025, 'evaluate USER, UID, SYDATE local');
dbms_hs.replace_base_caps(5026, 5026, 'KGL operation for PL/SQL RPC');
dbms_hs.replace_base_caps(5027, 5027, 'NVL: change ANSI to ORA compare');
dbms_hs.replace_base_caps(5028, 5028, 'remote mapping of queries');
dbms_hs.replace_base_caps(5029, 5029, '2PC type (RO-SS-CC-PREP/2P-2PCC)');
dbms_hs.replace_base_caps(5030, 5030, 'streamed protocol version number');
dbms_hs.replace_base_caps(5031, 5031, 'special non-optdef functions');
dbms_hs.replace_base_caps(5032, 5032, 'CURRVAL and NEXTVAL');
dbms_hs.replace_base_caps(5033, 5033, 'hints (inline comments and aliases');
dbms_hs.replace_base_caps(5034, 5034, 'remote sort by index access');
dbms_hs.replace_base_caps(5035, 5035, 'use universal rowid for rowids');
dbms_hs.replace_base_caps(5036, 5036, 'wait option in select for update');
dbms_hs.replace_base_caps(5037, 5037, 'connect by order siblings by');
dbms_hs.replace_base_caps(5038, 5038, 'On clause');
dbms_hs.replace_base_caps(5039, 5039, 'no supprt for rem extended partn');
dbms_hs.replace_base_caps(5040, 5040, 'SPREADSHEET clause');
dbms_hs.replace_base_caps(5041, 5041, 'Merge optional WHERE clauses');
dbms_hs.replace_base_caps(5042, 5042, 'connect by nocycle');
dbms_hs.replace_base_caps(5043, 5043, 'connect by enhancements: connect_by_iscycle, connect_by_isleaf');
dbms_hs.replace_base_caps(5044, 5044, 'Group Outer-Join');
dbms_hs.replace_base_caps(5045, 5045, ' u''xxx\ffff''');
dbms_hs.replace_base_caps(5046, 5046, '"with check option" in from-clause subqueries');
dbms_hs.replace_base_caps(5047, 5047, 'new connect-by');
dbms_hs.replace_base_caps(5048, 5048, 'native full outer join');
dbms_hs.replace_base_caps(5049, 5049, 'recursive WITH');
dbms_hs.replace_base_caps(5050, 5050, 'column alias list for WITH clause');
dbms_hs.replace_base_caps(5051, 5051, 'WAIT option in LOCK TABLE');
dbms_hs.replace_base_caps(5052, 5052, 'SQL with match recognize');
dbms_hs.replace_base_caps(5053, 5053, 'Data bound collation support');
dbms_hs.replace_base_caps(5054, 5054, 'Polymorphic Table Function');
dbms_hs.replace_base_caps(5963, 5963, 'FDS can not DescribeParam after Exec in Transact SQL');
dbms_hs.replace_base_caps(5964, 5964, 'FDS can handle schema in queries');
dbms_hs.replace_base_caps(5965, 5965, 'Null is Null');
dbms_hs.replace_base_caps(5966, 5966, 'ANSI Decode (CASE) support');
dbms_hs.replace_base_caps(5967, 5967, 'Result set support');
dbms_hs.replace_base_caps(5968, 5968, 'Piecewise fetch and exec');
dbms_hs.replace_base_caps(5969, 5969, 'How to handle PUBLIC schema');
dbms_hs.replace_base_caps(5970, 5970, 'Subquery in having clause is supported');
dbms_hs.replace_base_caps(5971, 5971, 'Do not close and re-parse on re-exec of SELECTs');
dbms_hs.replace_base_caps(5972, 5972, 'Informix related cap: Add space before negative numeric literals');
dbms_hs.replace_base_caps(5973, 5973, 'Informix related cap: Add extra parenthesis for update sub-queries to make it a list');
dbms_hs.replace_base_caps(5974, 5974, 'DB2-related cap: Change empty str assigns to null assigns');
dbms_hs.replace_base_caps(5975, 5975, 'DB2-related cap: Zero length bind not same as null bind');
dbms_hs.replace_base_caps(5976, 5976, 'DB2-related cap: Add space after comma');
dbms_hs.replace_base_caps(5977, 5977, 'DB2-related cap: Order-by clause contains only numbers');
dbms_hs.replace_base_caps(5978, 5978, 'DB2-related cap: Change empty string comparisons to is null');
dbms_hs.replace_base_caps(5979, 5979, 'Implicit Coercion cap: Comparison of two objrefs');
dbms_hs.replace_base_caps(5980, 5980, 'Implicit Coercion cap: Comparison of objref and bindvar');
dbms_hs.replace_base_caps(5981, 5981, 'Implicit Coercion cap: Comparison of objref and literal');
dbms_hs.replace_base_caps(5982, 5982, 'Implicit Coercion cap: Comparison of two bindvars');
dbms_hs.replace_base_caps(5983, 5983, 'Implicit Coercion cap: Comparison of bindvar and literal');
dbms_hs.replace_base_caps(5984, 5984, 'Implicit Coercion cap: Comparison of two literals');
dbms_hs.replace_base_caps(5985, 5985, 'Implicit Coercion cap: Assignment of objref to column');
dbms_hs.replace_base_caps(5986, 5986, 'Implicit Coercion cap: Assignment of bindvar to column');
dbms_hs.replace_base_caps(5987, 5987, 'Implicit Coercion cap: Assignment of literal to column');
dbms_hs.replace_base_caps(5988, 5988, 'RPC Bundling Capability');
dbms_hs.replace_base_caps(5989, 5989, 'hoatcis() call capability');
dbms_hs.replace_base_caps(5990, 5990, 'Quote Owner names in SQL statements');
dbms_hs.replace_base_caps(5991, 5991, 'Map Alias to table names in non-select statements');
dbms_hs.replace_base_caps(5992, 5992, 'Send Delimited IDs to FDS');
dbms_hs.replace_base_caps(5993, 5993, 'HOA Describe Table Call Capability');
dbms_hs.replace_base_caps(5994, 5994, 'Raw literal format');
dbms_hs.replace_base_caps(5995, 5995, 'FOR UPDATE syntax mapping');
dbms_hs.replace_base_caps(5996, 5996, 'Replace NULLs in select list with other constant');
dbms_hs.replace_base_caps(5997, 5997, 'flush describe table cache');
dbms_hs.replace_base_caps(5998, 5998, 'length of physical part of rowid');
dbms_hs.replace_base_caps(5999, 5999, 'Bind to parameter mapping');
dbms_hs.replace_base_caps(6000, 6000, 'SELECT ... FOR UPDATE');
dbms_hs.replace_base_caps(6001, 6001, 'SELECT');
dbms_hs.replace_base_caps(6002, 6002, 'UPDATE');
dbms_hs.replace_base_caps(6003, 6003, 'DELETE');
dbms_hs.replace_base_caps(6004, 6004, 'INSERT ... VALUES (...)');
dbms_hs.replace_base_caps(6005, 6005, 'INSERT ... SELECT ...');
dbms_hs.replace_base_caps(6006, 6006, 'LOCK TABLE');
dbms_hs.replace_base_caps(6007, 6007, 'ROLLBACK TO SAVEPOINT ...');
dbms_hs.replace_base_caps(6008, 6008, 'SAVEPOINT ...');
dbms_hs.replace_base_caps(6009, 6009, 'SET TRANSACTION READ ONLY');
dbms_hs.replace_base_caps(6010, 6010, 'alter session set nls_* = ...');
dbms_hs.replace_base_caps(6011, 6011, 'alter session set GLOBAL_NAMES, OPTIMIZER_GOAL = ..');
dbms_hs.replace_base_caps(6012, 6012, 'alter session set REMOTE_DEPENDENCIES_MODE = ..');
dbms_hs.replace_base_caps(6013, 6013, 'set transaction isolation level serializable');
dbms_hs.replace_base_caps(6014, 6014, 'set constraints all immediate');
dbms_hs.replace_base_caps(6015, 6015, 'alter session set SKIP_UNUSABLE_INDEXES = ..');
dbms_hs.replace_base_caps(6016, 6016, 'alter session set time_zone - its absolete now');
dbms_hs.replace_base_caps(6017, 6017, 'alter session set ERROR_ON_OVERLAP_TIME');
dbms_hs.replace_base_caps(6018, 6018, 'Upsert');
dbms_hs.replace_base_caps(6019, 6019, 'alter session set archival row visibility = ...');
dbms_hs.replace_base_caps(7000, 7000, 'VARCHAR2');
dbms_hs.replace_base_caps(7001, 7001, 'INTEGER');
dbms_hs.replace_base_caps(7002, 7002, 'DECIMAL');
dbms_hs.replace_base_caps(7003, 7003, 'FLOAT');
dbms_hs.replace_base_caps(7004, 7004, 'DATE');
dbms_hs.replace_base_caps(7005, 7005, 'VARCHAR');
dbms_hs.replace_base_caps(7006, 7006, 'SMALL INTEGER');
dbms_hs.replace_base_caps(7007, 7007, 'RAW');
dbms_hs.replace_base_caps(7008, 7008, 'VAR RAW');
dbms_hs.replace_base_caps(7009, 7009, '? RAW');
dbms_hs.replace_base_caps(7010, 7010, 'SMALL FLOAT');
dbms_hs.replace_base_caps(7011, 7011, 'LONG INT QUADWORD');
dbms_hs.replace_base_caps(7012, 7012, 'LEFT OVERPUNCH');
dbms_hs.replace_base_caps(7013, 7013, 'RIGHT OVERPUNCH');
dbms_hs.replace_base_caps(7014, 7014, 'ROWID');
dbms_hs.replace_base_caps(7015, 7015, 'LEFT SEPARATE');
dbms_hs.replace_base_caps(7016, 7016, 'RIGHT SEPARATE');
dbms_hs.replace_base_caps(7017, 7017, 'OS DATE');
dbms_hs.replace_base_caps(7018, 7018, 'OS FULL ==> DATE + TIME');
dbms_hs.replace_base_caps(7019, 7019, 'OS TIME');
dbms_hs.replace_base_caps(7020, 7020, 'UNSIGNED SMALL INTEGER');
dbms_hs.replace_base_caps(7021, 7021, 'BYTE');
dbms_hs.replace_base_caps(7022, 7022, 'UNSIGNED BYTE');
dbms_hs.replace_base_caps(7023, 7023, 'UNSIGNED INTEGER');
dbms_hs.replace_base_caps(7024, 7024, 'CHAR INTEGER');
dbms_hs.replace_base_caps(7025, 7025, 'CHAR FLOAT');
dbms_hs.replace_base_caps(7026, 7026, 'CHAR DECIMAL');
dbms_hs.replace_base_caps(7027, 7027, 'LONG');
dbms_hs.replace_base_caps(7028, 7028, 'VARLONG');
dbms_hs.replace_base_caps(7029, 7029, 'OS RDATE');
dbms_hs.replace_base_caps(7030, 7030, '(RELATIVE) RECORD ADDRESS');
dbms_hs.replace_base_caps(7031, 7031, '(RELATIVE) RECORD NUMBER');
dbms_hs.replace_base_caps(7032, 7032, 'VARGRAPHIC');
dbms_hs.replace_base_caps(7033, 7033, 'VARNUM');
dbms_hs.replace_base_caps(7034, 7034, 'NUMBER');
dbms_hs.replace_base_caps(7035, 7035, 'ANSI FIXED CHAR');
dbms_hs.replace_base_caps(7036, 7036, 'LONG RAW');
dbms_hs.replace_base_caps(7037, 7037, 'LONG VARRAW');
dbms_hs.replace_base_caps(7038, 7038, 'MLSLABEL');
dbms_hs.replace_base_caps(7039, 7039, 'RAW MLSLABEL');
dbms_hs.replace_base_caps(7040, 7040, 'CHARZ');
dbms_hs.replace_base_caps(7041, 7041, 'BINARY INTEGER');
dbms_hs.replace_base_caps(7042, 7042, 'ORACLE DATE');
dbms_hs.replace_base_caps(7043, 7043, 'BOOLEAN');
dbms_hs.replace_base_caps(7044, 7044, 'CHAR ROWID');
dbms_hs.replace_base_caps(7045, 7045, 'UNSIGNED LONG INTEGER');
dbms_hs.replace_base_caps(7046, 7046, 'ODBC CHAR DECIMAL');
dbms_hs.replace_base_caps(7047, 7047, 'TIMESTAMP');
dbms_hs.replace_base_caps(7048, 7048, 'TIMESTAMP WITH TIME ZONE');
dbms_hs.replace_base_caps(7049, 7049, 'INTERVAL - YEAR TO MONTH');
dbms_hs.replace_base_caps(7050, 7050, 'INTERVAL - DAY TO SECOND');
dbms_hs.replace_base_caps(7051, 7051, 'TIMESTAMP WITH IMPLICIT TIME ZONE');
dbms_hs.replace_base_caps(7052, 7052, 'CHAR TIMESTAMP');
dbms_hs.replace_base_caps(7053, 7053, 'CHAR TIMESTAMP WITH TIMEZONE');
dbms_hs.replace_base_caps(7054, 7054, 'CHAR INTERVAL - YEAR TO MONTH');
dbms_hs.replace_base_caps(7055, 7055, 'CHAR INTERVAL - DAY TO SECOND');
dbms_hs.replace_base_caps(7056, 7056, 'CHAR TIMESTAMP WITH IMPLICIT TIME ZONE');
dbms_hs.replace_base_caps(7057, 7057, 'STRUCT TIMESTAMP');
dbms_hs.replace_base_caps(7058, 7058, 'STRUCT TIMESTAMP WITH TIMEZONE');
dbms_hs.replace_base_caps(7059, 7059, 'STRUCT INTERVAL - YEAR TO MONTH');
dbms_hs.replace_base_caps(7060, 7060, 'STRUCT INTERVAL - DAY TO SECOND');
dbms_hs.replace_base_caps(7061, 7061, 'STRUCT TIMESTAMP WITH IMPLICIT TIME ZONE');
dbms_hs.replace_base_caps(7062, 7062, 'RESULT SET HANDLE');
dbms_hs.replace_base_caps(7063, 7063, 'CLOB');
dbms_hs.replace_base_caps(7064, 7064, 'BLOB');
dbms_hs.replace_base_caps(7065, 7065, 'BINARY FILE');
dbms_hs.replace_base_caps(7066, 7066, 'ODBC DATE');
dbms_hs.replace_base_caps(7067, 7067, 'ODBC TIMESTAMP STRUCT');
dbms_hs.replace_base_caps(7068, 7068, 'ODBC INVERVAL YEAR TO MONTH');
dbms_hs.replace_base_caps(7069, 7069, 'ODBC INTERVAL DATE TO SECOND');
dbms_hs.replace_base_caps(7500, 7500, '');
dbms_hs.replace_base_caps(7501, 7501, '');
dbms_hs.replace_base_caps(7502, 7502, '');
dbms_hs.replace_base_caps(7503, 7503, '');
dbms_hs.replace_base_caps(7504, 7504, '');
dbms_hs.replace_base_caps(7505, 7505, '');
dbms_hs.replace_base_caps(7506, 7506, '');
dbms_hs.replace_base_caps(7507, 7507, '');
dbms_hs.replace_base_caps(7508, 7508, '');
dbms_hs.replace_base_caps(7509, 7509, '');
dbms_hs.replace_base_caps(7510, 7510, '');
dbms_hs.replace_base_caps(7511, 7511, '');
dbms_hs.replace_base_caps(7512, 7512, '');
dbms_hs.replace_base_caps(7513, 7513, '');
dbms_hs.replace_base_caps(7514, 7514, '');
dbms_hs.replace_base_caps(7515, 7515, '');
dbms_hs.replace_base_caps(7516, 7516, '');
dbms_hs.replace_base_caps(7517, 7517, '');
dbms_hs.replace_base_caps(7518, 7518, '');
dbms_hs.replace_base_caps(7519, 7519, '');
dbms_hs.replace_base_caps(8000, 8000, '');
/*------------------------------------------------*/
/* DD translations used to test HS installation */
/*------------------------------------------------*/
dbms_hs.replace_base_dd('DD_TKHODDTR1', 'DD_TKHODDTR1', NULL);
dbms_hs.replace_base_dd('DD_TKHODDTR3', 'DD_TKHODDTR3', NULL);
dbms_hs.replace_base_dd('DD_TKHODDTR5', 'DD_TKHODDTR5', NULL);
dbms_hs.replace_base_dd('DD_TKHODDTR6', 'DD_TKHODDTR6', NULL);
dbms_hs.replace_base_dd('DD_TKHODDTR7', 'DD_TKHODDTR7', NULL);
dbms_hs.replace_base_dd('DD_TKHODDTR8', 'DD_TKHODDTR8', NULL);
dbms_hs.replace_base_dd('DD_TKHODDTR9', 'DD_TKHODDTR9', NULL);
dbms_hs.replace_base_dd('DD_TKHODDTR10', 'DD_TKHODDTR10', NULL);
/*
Registered elsewhere as a standard table name:
dbms_hs.replace_base_dd('USER_SYNONYMS', USER_SYNONYMS', NULL);
Self-registered:
dbms_hs.replace_base_dd('TKHODDAU', TKHODDAU', NULL);
*/
/*--------------------------------------------*/
/* DD translations accessible to all agents */
/*--------------------------------------------*/
dbms_hs.replace_base_dd('ALL_CATALOG', 'ALL_CATALOG', NULL);
dbms_hs.replace_base_dd('ALL_COL_COMMENTS', 'ALL_COL_COMMENTS', NULL);
dbms_hs.replace_base_dd('ALL_COL_PRIVS', 'ALL_COL_PRIVS', NULL);
dbms_hs.replace_base_dd('ALL_COL_PRIVS_MADE', 'ALL_COL_PRIVS_MADE', NULL);
dbms_hs.replace_base_dd('ALL_COL_PRIVS_RECD', 'ALL_COL_PRIVS_RECD', NULL);
dbms_hs.replace_base_dd('ALL_CONSTRAINTS', 'ALL_CONSTRAINTS', NULL);
dbms_hs.replace_base_dd('ALL_CONS_COLUMNS', 'ALL_CONS_COLUMNS', NULL);
dbms_hs.replace_base_dd('ALL_DB_LINKS', 'ALL_DB_LINKS', NULL);
dbms_hs.replace_base_dd('ALL_DEF_AUDIT_OPTS', 'ALL_DEF_AUDIT_OPTS', NULL);
dbms_hs.replace_base_dd('ALL_DEPENDENCIES', 'ALL_DEPENDENCIES', NULL);
dbms_hs.replace_base_dd('ALL_ERRORS', 'ALL_ERRORS', NULL);
dbms_hs.replace_base_dd('ALL_INDEXES', 'ALL_INDEXES', NULL);
dbms_hs.replace_base_dd('ALL_IND_COLUMNS', 'ALL_IND_COLUMNS', NULL);
dbms_hs.replace_base_dd('ALL_OBJECTS', 'ALL_OBJECTS', NULL);
dbms_hs.replace_base_dd('ALL_SEQUENCES', 'ALL_SEQUENCES', NULL);
dbms_hs.replace_base_dd('ALL_SNAPSHOTS', 'ALL_SNAPSHOTS', NULL);
dbms_hs.replace_base_dd('ALL_SOURCE', 'ALL_SOURCE', NULL);
dbms_hs.replace_base_dd('ALL_SYNONYMS', 'ALL_SYNONYMS', NULL);
dbms_hs.replace_base_dd('ALL_TABLES', 'ALL_TABLES', NULL);
dbms_hs.replace_base_dd('ALL_TAB_COLUMNS', 'ALL_TAB_COLUMNS', NULL);
dbms_hs.replace_base_dd('ALL_TAB_COMMENTS', 'ALL_TAB_COMMENTS', NULL);
dbms_hs.replace_base_dd('ALL_TAB_PRIVS', 'ALL_TAB_PRIVS', NULL);
dbms_hs.replace_base_dd('ALL_TAB_PRIVS_MADE', 'ALL_TAB_PRIVS_MADE', NULL);
dbms_hs.replace_base_dd('ALL_TAB_PRIVS_RECD', 'ALL_TAB_PRIVS_RECD', NULL);
dbms_hs.replace_base_dd('ALL_TRIGGERS', 'ALL_TRIGGERS', NULL);
dbms_hs.replace_base_dd('ALL_USERS', 'ALL_USERS', NULL);
dbms_hs.replace_base_dd('ALL_VIEWS', 'ALL_VIEWS', NULL);
dbms_hs.replace_base_dd('AUDIT_ACTIONS', 'AUDIT_ACTIONS', NULL);
dbms_hs.replace_base_dd('COLUMN_PRIVILEGES', 'COLUMN_PRIVILEGES', NULL);
dbms_hs.replace_base_dd('DBA_CATALOG', 'DBA_CATALOG', NULL);
dbms_hs.replace_base_dd('DBA_COL_COMMENTS', 'DBA_COL_COMMENTS', NULL);
dbms_hs.replace_base_dd('DBA_COL_PRIVS', 'DBA_COL_PRIVS', NULL);
dbms_hs.replace_base_dd('DBA_OBJECTS', 'DBA_OBJECTS', NULL);
dbms_hs.replace_base_dd('DBA_ROLES', 'DBA_ROLES', NULL);
dbms_hs.replace_base_dd('DBA_ROLE_PRIVS', 'DBA_ROLE_PRIVS', NULL);
dbms_hs.replace_base_dd('DBA_SYS_PRIVS', 'DBA_SYS_PRIVS', NULL);
dbms_hs.replace_base_dd('DBA_TABLES', 'DBA_TABLES', NULL);
dbms_hs.replace_base_dd('DBA_TAB_COLUMNS', 'DBA_TAB_COLUMNS', NULL);
dbms_hs.replace_base_dd('DBA_TAB_COMMENTS', 'DBA_TAB_COMMENTS', NULL);
dbms_hs.replace_base_dd('DBA_TAB_PRIVS', 'DBA_TAB_PRIVS', NULL);
dbms_hs.replace_base_dd('DBA_USERS', 'DBA_USERS', NULL);
dbms_hs.replace_base_dd('DICTIONARY', 'DICTIONARY', NULL);
dbms_hs.replace_base_dd('DICT_COLUMNS', 'DICT_COLUMNS', NULL);
dbms_hs.replace_base_dd('DUAL', 'DUAL', NULL);
dbms_hs.replace_base_dd('INDEX_STATS', 'INDEX_STATS', NULL);
dbms_hs.replace_base_dd('PRODUCT_USER_PROFILE', 'PRODUCT_USER_PROFILE', NULL);
dbms_hs.replace_base_dd('RESOURCE_COST', 'RESOURCE_COST', NULL);
dbms_hs.replace_base_dd('ROLE_ROLE_PRIVS', 'ROLE_ROLE_PRIVS', NULL);
dbms_hs.replace_base_dd('ROLE_SYS_PRIVS', 'ROLE_SYS_PRIVS', NULL);
dbms_hs.replace_base_dd('ROLE_TAB_PRIVS', 'ROLE_TAB_PRIVS', NULL);
dbms_hs.replace_base_dd('SESSION_PRIVS', 'SESSION_PRIVS', NULL);
dbms_hs.replace_base_dd('SESSION_ROLES', 'SESSION_ROLES', NULL);
dbms_hs.replace_base_dd('TABLE_PRIVILEGES', 'TABLE_PRIVILEGES', NULL);
dbms_hs.replace_base_dd('USER_AUDIT_OBJECT', 'USER_AUDIT_OBJECT', NULL);
dbms_hs.replace_base_dd('USER_AUDIT_SESSION', 'USER_AUDIT_SESSION', NULL);
dbms_hs.replace_base_dd('USER_AUDIT_STATEMENT', 'USER_AUDIT_STATEMENT', NULL);
dbms_hs.replace_base_dd('USER_AUDIT_TRAIL', 'USER_AUDIT_TRAIL', NULL);
dbms_hs.replace_base_dd('USER_CATALOG', 'USER_CATALOG', NULL);
dbms_hs.replace_base_dd('USER_CLUSTERS', 'USER_CLUSTERS', NULL);
dbms_hs.replace_base_dd('USER_CLU_COLUMNS', 'USER_CLU_COLUMNS', NULL);
dbms_hs.replace_base_dd('USER_COL_COMMENTS', 'USER_COL_COMMENTS', NULL);
dbms_hs.replace_base_dd('USER_COL_PRIVS', 'USER_COL_PRIVS', NULL);
dbms_hs.replace_base_dd('USER_COL_PRIVS_MADE', 'USER_COL_PRIVS_MADE', NULL);
dbms_hs.replace_base_dd('USER_COL_PRIVS_RECD', 'USER_COL_PRIVS_RECD', NULL);
dbms_hs.replace_base_dd('USER_CONSTRAINTS', 'USER_CONSTRAINTS', NULL);
dbms_hs.replace_base_dd('USER_CONS_COLUMNS', 'USER_CONS_COLUMNS', NULL);
dbms_hs.replace_base_dd('USER_DB_LINKS', 'USER_DB_LINKS', NULL);
dbms_hs.replace_base_dd('USER_DEPENDENCIES', 'USER_DEPENDENCIES', NULL);
dbms_hs.replace_base_dd('USER_ERRORS', 'USER_ERRORS', NULL);
dbms_hs.replace_base_dd('USER_EXTENTS', 'USER_EXTENTS', NULL);
dbms_hs.replace_base_dd('USER_FREE_SPACE', 'USER_FREE_SPACE', NULL);
dbms_hs.replace_base_dd('USER_INDEXES', 'USER_INDEXES', NULL);
dbms_hs.replace_base_dd('USER_IND_COLUMNS', 'USER_IND_COLUMNS', NULL);
dbms_hs.replace_base_dd('USER_OBJECTS', 'USER_OBJECTS', NULL);
dbms_hs.replace_base_dd('USER_OBJ_AUDIT_OPTS', 'USER_OBJ_AUDIT_OPTS', NULL);
dbms_hs.replace_base_dd('USER_RESOURCE_LIMITS', 'USER_RESOURCE_LIMITS', NULL);
dbms_hs.replace_base_dd('USER_ROLE_PRIVS', 'USER_ROLE_PRIVS', NULL);
dbms_hs.replace_base_dd('USER_SEGMENTS', 'USER_SEGMENTS', NULL);
dbms_hs.replace_base_dd('USER_SEQUENCES', 'USER_SEQUENCES', NULL);
dbms_hs.replace_base_dd('USER_SNAPSHOT_LOGS', 'USER_SNAPSHOT_LOGS', NULL);
dbms_hs.replace_base_dd('USER_SOURCE', 'USER_SOURCE', NULL);
dbms_hs.replace_base_dd('USER_SYNONYMS', 'USER_SYNONYMS', NULL);
dbms_hs.replace_base_dd('USER_SYS_PRIVS', 'USER_SYS_PRIVS', NULL);
dbms_hs.replace_base_dd('USER_TABLES', 'USER_TABLES', NULL);
dbms_hs.replace_base_dd('USER_TABLESPACES', 'USER_TABLESPACES', NULL);
dbms_hs.replace_base_dd('USER_TAB_COLUMNS', 'USER_TAB_COLUMNS', NULL);
dbms_hs.replace_base_dd('USER_TAB_COMMENTS', 'USER_TAB_COMMENTS', NULL);
dbms_hs.replace_base_dd('USER_TAB_PRIVS', 'USER_TAB_PRIVS', NULL);
dbms_hs.replace_base_dd('USER_TAB_PRIVS_MADE', 'USER_TAB_PRIVS_MADE', NULL);
dbms_hs.replace_base_dd('USER_TAB_PRIVS_RECD', 'USER_TAB_PRIVS_RECD', NULL);
dbms_hs.replace_base_dd('USER_TRIGGERS', 'USER_TRIGGERS', NULL);
dbms_hs.replace_base_dd('USER_TS_QUOTAS', 'USER_TS_QUOTAS', NULL);
dbms_hs.replace_base_dd('USER_USERS', 'USER_USERS', NULL);
dbms_hs.replace_base_dd('USER_VIEWS', 'USER_VIEWS', NULL);
/*--------------------------------------------------------*/
/* Pseudo-FDS class for BITE (Built-In Test Environment */
/*--------------------------------------------------------*/
dbms_hs.replace_fds_class('BITE', 'BITE', 'Built-In Test Environment');
end;
/
commit;
@?/rdbms/admin/sqlsessend.sql
OHA YOOOO