improved object DDL extraction

This commit is contained in:
ogobrecht 2019-05-28 21:46:50 +02:00
parent 5b6944bdc4
commit eb27d57da9
4 changed files with 724 additions and 701 deletions

1378
PLEX.pkb

File diff suppressed because it is too large Load Diff

View File

@ -361,10 +361,9 @@ FUNCTION util_set_build_status_run_only (
p_app_export_sql IN CLOB
) RETURN CLOB;
PROCEDURE util_export_files_append (
PROCEDURE util_clob_add_to_export_files (
p_export_files IN OUT NOCOPY tab_export_files,
p_name IN VARCHAR2,
p_contents IN CLOB
p_name IN VARCHAR2
);
FUNCTION util_calc_data_timestamp (
@ -387,32 +386,18 @@ PROCEDURE util_setup_dbms_metadata (
--------------------------------------------------------------------------------------------------------------------------------
-- The following tools are working on the global private package variables g_clob, g_clob_varchar_cache, g_log and g_queries
--------------------------------------------------------------------------------------------------------------------------------
PROCEDURE util_clob_createtemporary (
p_clob IN OUT NOCOPY CLOB
);
PROCEDURE util_clob_freetemporary (
p_clob IN OUT NOCOPY CLOB
);
PROCEDURE util_clob_flush_cache;
PROCEDURE util_clob_flush_cache (
p_clob IN OUT NOCOPY CLOB,
p_cache IN OUT NOCOPY VARCHAR
PROCEDURE util_clob_append (
p_content IN VARCHAR2
);
PROCEDURE util_clob_append (
p_clob IN OUT NOCOPY CLOB,
p_cache IN OUT NOCOPY VARCHAR,
p_content IN VARCHAR2
p_content IN CLOB
);
PROCEDURE util_clob_append (
p_clob IN OUT NOCOPY CLOB,
p_cache IN OUT NOCOPY VARCHAR,
p_content IN CLOB
);
PROCEDURE util_g_clob_query_to_csv (
PROCEDURE util_clob_query_to_csv (
p_query IN VARCHAR2,
p_max_rows IN NUMBER DEFAULT 1000,
p_delimiter IN VARCHAR2 DEFAULT ',',
@ -420,7 +405,13 @@ PROCEDURE util_g_clob_query_to_csv (
p_header_prefix IN VARCHAR2 DEFAULT NULL
);
PROCEDURE util_g_clob_create_runtime_log;
PROCEDURE util_clob_create_runtime_log;
PROCEDURE util_errlog_append (
p_message IN VARCHAR2
);
PROCEDURE util_errlog_flush_cache;
FUNCTION util_log_get_runtime (
p_start IN TIMESTAMP,

View File

@ -1,3 +1,3 @@
@echo off
set NLS_LANG=AMERICAN_AMERICA.AL32UTF8
echo exit | sqlplus -S plex_light/oracle@localhost/v181 @plex_install.sql
echo exit | sqlplus -S sys/oracle@localhost/v181 as sysdba @plex_install.sql

View File

@ -5,9 +5,10 @@ prompt Installing PL/SQL Export Utilities
prompt ==================================
prompt Set compiler flags
DECLARE
v_utils_public VARCHAR2(5) := 'TRUE'; -- make utilities public available (for testing or other usages)
v_apex_installed VARCHAR2(5) := 'FALSE'; -- do not change (is set dynamically)
v_ords_installed VARCHAR2(5) := 'FALSE'; -- do not change (is set dynamically)
v_utils_public VARCHAR2(5) := 'FALSE'; -- make utilities public available (for testing or other usages)
v_debug_on VARCHAR2(5) := 'FALSE'; -- object DDL: extract only one object per type to find problematic ones and save time in big schemas like SYS or APEX_XXX
BEGIN
FOR i IN (
SELECT *
@ -26,9 +27,10 @@ BEGIN
END LOOP;
EXECUTE IMMEDIATE 'alter session set plsql_ccflags = ''' ||
'utils_public:' || v_utils_public || ',' ||
'apex_installed:' || v_apex_installed || ',' ||
'ords_installed:' || v_ords_installed || '''';
'ords_installed:' || v_ords_installed || ',' ||
'utils_public:' || v_utils_public || ',' ||
'debug_on:' || v_debug_on || '''';
END;
/
prompt Compile package plex (spec)