Summary Table
| Categories |
Total Count |
| PII |
0 |
| URL |
0 |
| DNS |
0 |
| EKL |
0 |
| IP |
0 |
| PORT |
0 |
| VsID |
0 |
| CF |
0 |
| AI |
0 |
| VPD |
0 |
| PL |
0 |
| Other |
0 |
File Content
DROP PACKAGE BODY ADRMGT.STATS_UTIL;
CREATE OR REPLACE PACKAGE BODY ADRMGT.STATS_UTIL
-- ###############################################################################
-- # Description: 1750 - ADR create 1 table and 4 SPs for export/import stats
-- #
-- # Usage: Called by run_wrapper.sql
-- # Input Parameters:
-- # 1) None
-- # Output:
-- # 1) Terminal
-- # Internal Script Parameters:
-- # 1) None
-- #
-- #
-- ###########################################################################
-- # Change History
-- #
-- # DATE User Name DESCRIPTION
-- # ---------- ----------------- -------------------------------------------------
-- # 01/30/2013 Richard Do Created
-- #
-- #
-- ###########################################################################
AS
/************************************************************************/
/* */
/* VerifyTable: This function is to validate table */
/* */
/************************************************************************/
FUNCTION VerifyTable (
p_schemaname IN VARCHAR2,
p_tablename IN VARCHAR2)
RETURN NUMBER
IS
VN_row_cnt NUMBER := 0;
BEGIN
VC_msg_log := 'Verifing table existed or not.';
SELECT COUNT(1)
INTO vn_row_cnt
FROM all_tables
WHERE table_name = UPPER(p_tablename)
AND owner = UPPER(p_schemaname);
RETURN vn_row_cnt;
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE('EXCEPTION (VerifyTable SP): '||VC_msg_log||' - ERRMSG '||SQLERRM);
END VerifyTable;
/************************************************************************/
/* */
/* VerifySchema: This function is to validate schema */
/* */
/************************************************************************/
FUNCTION VerifySchema (p_schemaname IN VARCHAR2)
RETURN NUMBER
IS
VN_row_cnt NUMBER := 0;
BEGIN
VC_msg_log := 'Verifing schema owner existed or not.';
SELECT COUNT(1)
INTO vn_row_cnt
FROM all_tables
WHERE owner = UPPER(p_schemaname)
AND rownum <= 1;
RETURN vn_row_cnt;
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE('EXCEPTION (VerifySchema SP): '||VC_msg_log||' - ERRMSG '||SQLERRM);
END VerifySchema;
/************************************************************************************/
/* */
/* CreateStatTable: This procedure is to create a staging table to hold stattistics */
/* .. */
/************************************************************************************/
PROCEDURE CreateStatTable(
p_stattab VARCHAR2,
p_statowner VARCHAR2)
IS
VN_row_cnt NUMBER := 0;
BEGIN
VC_msg_log := 'Verifing table existed or not.';
SELECT COUNT(1)
INTO vn_row_cnt
FROM all_tables
WHERE TABLE_NAME= VC_stattab
AND owner = VC_stattab_owner;
IF vn_row_cnt > 0 THEN
DBMS_OUTPUT.PUT_LINE('INFORMATION - Staging table '||VC_stattab||' already existed.');
ELSE
VC_msg_log := 'Creating staging table '|| VC_stattab;
DBMS_STATS.CREATE_STAT_TABLE(ownname =>VC_stattab_owner ,stattab => VC_stattab , tblspace => VC_stattab_tbs);
END IF;
EXCEPTION
WHEN OTHERS THEN
RAISE_APPLICATION_ERROR(-20035,'EXCEPTION (CreateStatTable SP): '||VC_msg_log||' - ERRMSG '||SQLERRM);
END CreateStatTable;
/************************************************************************************/
/* */
/* ExportTabStats: This procedure is to export statistics of a specified table to */
/* a staging table.. */
/************************************************************************************/
PROCEDURE ExportTabStats(
p_ownname IN VARCHAR2,
p_tabname IN VARCHAR2)
IS
BEGIN
VC_msg_log := 'Begin export table stats.';
DBMS_STATS.EXPORT_TABLE_STATS(ownname => p_ownname, tabname => p_tabname, stattab => VC_stattab, statown => VC_stattab_owner, cascade => true);
EXCEPTION
WHEN OTHERS THEN
RAISE_APPLICATION_ERROR(-20036,'EXCEPTION (ExportTabStats SP): '||VC_msg_log||' - ERRMSG '||SQLERRM);
END ExportTabStats;
/*************************************************************************************/
/* */
/* ImportTabStats: This procedure is to import statistics of to a specified table */
/* . */
/*************************************************************************************/
PROCEDURE ImportTabStats(p_ownname IN VARCHAR2, p_tabname IN VARCHAR2)
IS
BEGIN
VC_msg_log := 'Begin importing table stats.';
DBMS_STATS.IMPORT_TABLE_STATS(ownname => p_ownname, tabname => p_tabname, stattab => VC_stattab, statown => VC_stattab_owner, cascade => true);
EXCEPTION
WHEN OTHERS THEN
RAISE_APPLICATION_ERROR(-20038,'EXCEPTION (ImportTabStats SP): '||VC_msg_log||' - ERRMSG '||SQLERRM);
END ImportTabStats;
/****************************************************************************/
/* */
/* ExportSchemaStats: This procedure is to export statistics of a schema */
/* */
/****************************************************************************/
PROCEDURE ExportSchemaStats(p_schemaname IN VARCHAR2)
IS
BEGIN
VC_msg_log := 'Begin exporting schema stats.';
DBMS_STATS.EXPORT_SCHEMA_STATS(ownname=> p_schemaname, stattab => VC_stattab, statown => VC_stattab_owner);
EXCEPTION
WHEN OTHERS THEN
RAISE_APPLICATION_ERROR(-20050,'EXCEPTION (ExportSchemaStats SP): '||VC_msg_log||' - ERRMSG '||SQLERRM);
END ExportSchemaStats;
/****************************************************************************/
/* */
/* ImportSchemaStats: This procedure is to import statistics of a schema */
/* */
/****************************************************************************/
PROCEDURE ImportSchemaStats(p_schemaname IN VARCHAR2)
IS
BEGIN
VC_msg_log := 'Begin importing schema stats.';
DBMS_STATS.IMPORT_SCHEMA_STATS(ownname => p_schemaname, stattab => VC_stattab, statown => VC_stattab_owner);
EXCEPTION
WHEN OTHERS THEN
RAISE_APPLICATION_ERROR(-20055,'EXCEPTION (ImportSchemaStats SP): '||VC_msg_log||' - ERRMSG '||SQLERRM);
END ImportSchemaStats;
END STATS_UTIL;
/
CREATE OR REPLACE PUBLIC SYNONYM STATS_UTIL FOR ADRMGT.STATS_UTIL;
GRANT EXECUTE ON ADRMGT.STATS_UTIL TO ADR;
GRANT EXECUTE ON ADRMGT.STATS_UTIL TO ADRAAP;
GRANT EXECUTE ON ADRMGT.STATS_UTIL TO ADREXT;
GRANT EXECUTE ON ADRMGT.STATS_UTIL TO ADRFILE;
GRANT EXECUTE ON ADRMGT.STATS_UTIL TO ADRREF;
GRANT EXECUTE ON ADRMGT.STATS_UTIL TO ADRTMP;
GRANT EXECUTE ON ADRMGT.STATS_UTIL TO BENS;
GRANT EXECUTE ON ADRMGT.STATS_UTIL TO CIS;
GRANT EXECUTE ON ADRMGT.STATS_UTIL TO EESRV;
GRANT EXECUTE ON ADRMGT.STATS_UTIL TO ESRJMS;
GRANT EXECUTE ON ADRMGT.STATS_UTIL TO IDHADM02;
GRANT EXECUTE ON ADRMGT.STATS_UTIL TO LOBR;
GRANT EXECUTE ON ADRMGT.STATS_UTIL TO ODM;
GRANT EXECUTE ON ADRMGT.STATS_UTIL TO PSIM;
GRANT EXECUTE ON ADRMGT.STATS_UTIL TO VBR;
GRANT EXECUTE ON ADRMGT.STATS_UTIL TO VOA;