commit
675dda1ec5
1
.gitignore
vendored
1
.gitignore
vendored
@ -1,3 +1,4 @@
|
||||
*.zip
|
||||
node_modules
|
||||
test_export
|
||||
test/app_100.zip
|
||||
|
||||
@ -46,6 +46,8 @@ INSTALLATION
|
||||
|
||||
CHANGELOG
|
||||
|
||||
- 2.3.0 (2020-11-29)
|
||||
- Function BackApp: Rework table data export format INSERT - thanks to Connor McDonald for his blog post [Generating INSERT scripts that run fast!](https://connor-mcdonald.com/2019/05/17/hacking-together-faster-inserts/)
|
||||
- 2.2.0 (2020-10-25)
|
||||
- Function BackApp:
|
||||
- Fixed: #4 - plex.backapp throws "ORA-00904: DBMS_JAVA.LONGNAME: invalid identifier" in Oracle instances without a JVM
|
||||
@ -87,7 +89,7 @@ SIGNATURE
|
||||
```sql
|
||||
PACKAGE PLEX AUTHID current_user IS
|
||||
c_plex_name CONSTANT VARCHAR2(30 CHAR) := 'PLEX - PL/SQL Export Utilities';
|
||||
c_plex_version CONSTANT VARCHAR2(10 CHAR) := '2.2.0';
|
||||
c_plex_version CONSTANT VARCHAR2(10 CHAR) := '2.3.0';
|
||||
c_plex_url CONSTANT VARCHAR2(40 CHAR) := 'https://github.com/ogobrecht/plex';
|
||||
c_plex_license CONSTANT VARCHAR2(10 CHAR) := 'MIT';
|
||||
c_plex_license_url CONSTANT VARCHAR2(60 CHAR) := 'https://github.com/ogobrecht/plex/blob/master/LICENSE.txt';
|
||||
@ -175,7 +177,7 @@ EXAMPLE ZIP FILE SQL*Plus
|
||||
-- Example Windows: certutil -decode app_100.zip.base64 app_100.zip
|
||||
-- Example Mac: base64 -D -i app_100.zip.base64 -o app_100.zip
|
||||
-- Example Linux: base64 -d app_100.zip.base64 > app_100.zip
|
||||
set verify off feedback off heading off termout off
|
||||
set verify off feedback off heading off
|
||||
set trimout on trimspool on pagesize 0 linesize 5000 long 100000000 longchunksize 32767
|
||||
whenever sqlerror exit sql.sqlcode rollback
|
||||
variable contents clob
|
||||
@ -188,9 +190,11 @@ BEGIN
|
||||
p_include_templates => true)));
|
||||
END;
|
||||
/
|
||||
set termout off
|
||||
spool "app_100.zip.base64"
|
||||
print contents
|
||||
spool off
|
||||
set termout on
|
||||
```
|
||||
|
||||
SIGNATURE
|
||||
|
||||
16
package.json
16
package.json
@ -7,12 +7,16 @@
|
||||
"url": "https://github.com/ogobrecht/plex.git"
|
||||
},
|
||||
"scripts": {
|
||||
"prebuild": "npx ploc --in src/PLEX.pks --out README.md",
|
||||
"build": "node src/build.js",
|
||||
"postbuild": "echo exit | sqlplus -S /@playground @plex_install.sql",
|
||||
"watch": "chokidar src/PLEX.pks src/PLEX.pkb src/plex_install.sql --initial -c \"npm run build\"",
|
||||
"test-ccflags": "cd src && echo exit | sqlplus -S /@playground @plex_test_ccflags.sql && cd ..",
|
||||
"test-export": "cd src && echo exit | sqlplus -S /@playground @plex_test_export.sql && cd .."
|
||||
"prebuild": "npx ploc --in src/PLEX.pks --out README.md",
|
||||
"build": "node src/build.js",
|
||||
"postbuild": "echo exit | sqlplus -S /@playground @plex_install.sql",
|
||||
"watch": "chokidar src/PLEX.pks src/PLEX.pkb src/plex_install.sql --initial -c \"npm run build\"",
|
||||
"test-ccflags": "cd test && echo exit | sqlplus -S /@playground @test_ccflags.sql && cd ..",
|
||||
"test-export": "cd test && echo exit | sqlplus -S /@playground @test_export.sql && cd ..",
|
||||
"test-types-table": "cd test && echo exit | sqlplus -S /@playground @test_types_1_table.sql && cd ..",
|
||||
"test-types-data": "cd test && echo exit | sqlplus -S /@playground @test_types_2_data.sql 100 && cd ..",
|
||||
"test-types-export": "cd test && echo exit | sqlplus -S /@playground @test_types_3_export.sql && cd ..",
|
||||
"test-types-import": "cd test && echo exit | sqlplus -S /@playground @test_types_4_import.sql && cd .."
|
||||
},
|
||||
"devDependencies": {
|
||||
"chokidar-cli": "^2.1.0",
|
||||
|
||||
514
plex_install.sql
514
plex_install.sql
@ -47,7 +47,7 @@ END;
|
||||
prompt Compile package plex (spec)
|
||||
CREATE OR REPLACE PACKAGE PLEX AUTHID current_user IS
|
||||
c_plex_name CONSTANT VARCHAR2(30 CHAR) := 'PLEX - PL/SQL Export Utilities';
|
||||
c_plex_version CONSTANT VARCHAR2(10 CHAR) := '2.2.0';
|
||||
c_plex_version CONSTANT VARCHAR2(10 CHAR) := '2.3.0';
|
||||
c_plex_url CONSTANT VARCHAR2(40 CHAR) := 'https://github.com/ogobrecht/plex';
|
||||
c_plex_license CONSTANT VARCHAR2(10 CHAR) := 'MIT';
|
||||
c_plex_license_url CONSTANT VARCHAR2(60 CHAR) := 'https://github.com/ogobrecht/plex/blob/master/LICENSE.txt';
|
||||
@ -85,6 +85,8 @@ INSTALLATION
|
||||
|
||||
CHANGELOG
|
||||
|
||||
- 2.3.0 (2020-11-29)
|
||||
- Function BackApp: Rework table data export format INSERT - thanks to Connor McDonald for his blog post [Generating INSERT scripts that run fast!](https://connor-mcdonald.com/2019/05/17/hacking-together-faster-inserts/)
|
||||
- 2.2.0 (2020-10-25)
|
||||
- Function BackApp:
|
||||
- Fixed: #4 - plex.backapp throws "ORA-00904: DBMS_JAVA.LONGNAME: invalid identifier" in Oracle instances without a JVM
|
||||
@ -282,7 +284,7 @@ EXAMPLE ZIP FILE SQL*Plus
|
||||
-- Example Windows: certutil -decode app_100.zip.base64 app_100.zip
|
||||
-- Example Mac: base64 -D -i app_100.zip.base64 -o app_100.zip
|
||||
-- Example Linux: base64 -d app_100.zip.base64 > app_100.zip
|
||||
set verify off feedback off heading off termout off
|
||||
set verify off feedback off heading off
|
||||
set trimout on trimspool on pagesize 0 linesize 5000 long 100000000 longchunksize 32767
|
||||
whenever sqlerror exit sql.sqlcode rollback
|
||||
variable contents clob
|
||||
@ -295,9 +297,11 @@ BEGIN
|
||||
p_include_templates => true)));
|
||||
END;
|
||||
{{/}}
|
||||
set termout off
|
||||
spool "app_100.zip.base64"
|
||||
print contents
|
||||
spool off
|
||||
set termout on
|
||||
```
|
||||
**/
|
||||
|
||||
@ -655,16 +659,16 @@ c_vc2_max_size CONSTANT PLS_INTEGER := 32767;
|
||||
c_zip_local_file_header CONSTANT RAW(4) := hextoraw('504B0304');
|
||||
c_zip_end_of_central_directory CONSTANT RAW(4) := hextoraw('504B0506');
|
||||
-- numeric type identfiers
|
||||
c_number CONSTANT PLS_INTEGER := 2; -- FLOAT
|
||||
c_number CONSTANT PLS_INTEGER := 2; -- FLOAT
|
||||
c_binary_float CONSTANT PLS_INTEGER := 100;
|
||||
c_binary_double CONSTANT PLS_INTEGER := 101;
|
||||
-- string type identfiers
|
||||
c_char CONSTANT PLS_INTEGER := 96; -- NCHAR
|
||||
c_varchar2 CONSTANT PLS_INTEGER := 1; -- NVARCHAR2
|
||||
c_char CONSTANT PLS_INTEGER := 96; -- NCHAR
|
||||
c_varchar2 CONSTANT PLS_INTEGER := 1; -- NVARCHAR2
|
||||
c_long CONSTANT PLS_INTEGER := 8;
|
||||
c_clob CONSTANT PLS_INTEGER := 112; -- NCLOB
|
||||
c_xmltype CONSTANT PLS_INTEGER := 109; -- ANYDATA, ANYDATASET, ANYTYPE, Object type, VARRAY, Nested table
|
||||
c_rowid CONSTANT PLS_INTEGER := 11;
|
||||
c_rowid CONSTANT PLS_INTEGER := 69;
|
||||
c_urowid CONSTANT PLS_INTEGER := 208;
|
||||
-- binary type identfiers
|
||||
c_raw CONSTANT PLS_INTEGER := 23;
|
||||
@ -674,8 +678,8 @@ c_bfile CONSTANT PLS_INTEGER := 114;
|
||||
-- date type identfiers
|
||||
c_date CONSTANT PLS_INTEGER := 12;
|
||||
c_timestamp CONSTANT PLS_INTEGER := 180;
|
||||
c_timestamp_with_time_zone CONSTANT PLS_INTEGER := 181;
|
||||
c_timestamp_with_local_tz CONSTANT PLS_INTEGER := 231;
|
||||
c_timestamp_tz CONSTANT PLS_INTEGER := 181;
|
||||
c_timestamp_ltz CONSTANT PLS_INTEGER := 231;
|
||||
-- interval type identfiers
|
||||
c_interval_year_to_month CONSTANT PLS_INTEGER := 182;
|
||||
c_interval_day_to_second CONSTANT PLS_INTEGER := 183;
|
||||
@ -843,8 +847,10 @@ PROCEDURE util_clob_query_to_csv (
|
||||
p_header_prefix IN VARCHAR2 DEFAULT NULL);
|
||||
|
||||
PROCEDURE util_clob_table_to_insert (
|
||||
p_table_name IN VARCHAR2,
|
||||
p_max_rows IN NUMBER DEFAULT 1000);
|
||||
p_table_name IN VARCHAR2,
|
||||
p_data_scn IN NUMBER,
|
||||
p_max_rows IN NUMBER DEFAULT 1000,
|
||||
p_insert_all_size IN NUMBER DEFAULT 10);
|
||||
|
||||
PROCEDURE util_clob_create_runtime_log (p_export_files IN OUT NOCOPY tab_export_files);
|
||||
|
||||
@ -1447,7 +1453,7 @@ IS
|
||||
v_cursor PLS_INTEGER;
|
||||
v_ignore_me PLS_INTEGER;
|
||||
v_data_count PLS_INTEGER := 0;
|
||||
v_col_cnt PLS_INTEGER;
|
||||
v_col_count PLS_INTEGER;
|
||||
v_desc_tab dbms_sql.desc_tab3;
|
||||
v_buffer_varchar2 VARCHAR2(32767 CHAR);
|
||||
v_buffer_clob CLOB;
|
||||
@ -1486,8 +1492,8 @@ BEGIN
|
||||
dbms_sql.native);
|
||||
-- https://support.esri.com/en/technical-article/000010110
|
||||
-- http://bluefrog-oracle.blogspot.com/2011/11/describing-ref-cursor-using-dbmssql-api.html
|
||||
dbms_sql.describe_columns3(v_cursor, v_col_cnt, v_desc_tab);
|
||||
FOR i IN 1..v_col_cnt LOOP
|
||||
dbms_sql.describe_columns3(v_cursor, v_col_count, v_desc_tab);
|
||||
FOR i IN 1..v_col_count LOOP
|
||||
IF v_desc_tab(i).col_type = c_clob THEN
|
||||
dbms_sql.define_column(v_cursor, i, v_buffer_clob);
|
||||
ELSIF v_desc_tab(i).col_type = c_xmltype THEN
|
||||
@ -1504,7 +1510,7 @@ BEGIN
|
||||
|
||||
-- create header
|
||||
util_clob_append(p_header_prefix);
|
||||
FOR i IN 1..v_col_cnt LOOP
|
||||
FOR i IN 1..v_col_count LOOP
|
||||
IF i > 1 THEN
|
||||
util_clob_append(p_delimiter);
|
||||
END IF;
|
||||
@ -1517,7 +1523,7 @@ BEGIN
|
||||
-- create data
|
||||
LOOP
|
||||
EXIT WHEN dbms_sql.fetch_rows(v_cursor) = 0 OR v_data_count = p_max_rows;
|
||||
FOR i IN 1..v_col_cnt LOOP
|
||||
FOR i IN 1..v_col_count LOOP
|
||||
IF i > 1 THEN
|
||||
util_clob_append(p_delimiter);
|
||||
END IF;
|
||||
@ -1533,14 +1539,16 @@ BEGIN
|
||||
END IF;
|
||||
ELSIF v_desc_tab(i).col_type = c_xmltype THEN
|
||||
dbms_sql.column_value(v_cursor, i, v_buffer_xmltype);
|
||||
v_buffer_clob := v_buffer_xmltype.getclobval();
|
||||
IF length(v_buffer_clob) <= c_vc2_max_size THEN
|
||||
v_buffer_varchar2 := substr(v_buffer_clob, 1, c_vc2_max_size);
|
||||
escape_varchar2_buffer_for_csv;
|
||||
util_clob_append(v_buffer_varchar2);
|
||||
ELSE
|
||||
v_buffer_varchar2 := 'XML value skipped - larger then ' || c_vc2_max_size || ' characters';
|
||||
util_clob_append(v_buffer_varchar2);
|
||||
IF v_buffer_xmltype IS NOT NULL THEN
|
||||
v_buffer_clob := v_buffer_xmltype.getclobval();
|
||||
IF length(v_buffer_clob) <= c_vc2_max_size THEN
|
||||
v_buffer_varchar2 := substr(v_buffer_clob, 1, c_vc2_max_size);
|
||||
escape_varchar2_buffer_for_csv;
|
||||
util_clob_append(v_buffer_varchar2);
|
||||
ELSE
|
||||
v_buffer_varchar2 := 'XML value skipped - larger then ' || c_vc2_max_size || ' characters';
|
||||
util_clob_append(v_buffer_varchar2);
|
||||
END IF;
|
||||
END IF;
|
||||
ELSIF v_desc_tab(i).col_type = c_long THEN
|
||||
dbms_sql.column_value_long(v_cursor, i, c_vc2_max_size, 0, v_buffer_varchar2, v_buffer_long_length);
|
||||
@ -1565,42 +1573,182 @@ BEGIN
|
||||
END IF;
|
||||
END util_clob_query_to_csv;
|
||||
|
||||
--------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
PROCEDURE util_clob_table_to_insert (
|
||||
p_table_name IN VARCHAR2,
|
||||
p_max_rows IN NUMBER DEFAULT 1000)
|
||||
p_table_name IN VARCHAR2,
|
||||
p_data_scn IN NUMBER,
|
||||
p_max_rows IN NUMBER DEFAULT 1000,
|
||||
p_insert_all_size IN NUMBER DEFAULT 10)
|
||||
IS
|
||||
v_query VARCHAR2(32767);
|
||||
v_cursor PLS_INTEGER;
|
||||
v_ignore_me PLS_INTEGER;
|
||||
v_data_count PLS_INTEGER := 0;
|
||||
v_col_cnt PLS_INTEGER;
|
||||
v_col_count PLS_INTEGER;
|
||||
v_desc_tab dbms_sql.desc_tab3;
|
||||
v_table_insert_prefix VARCHAR2(4000);
|
||||
v_nls_numeric_characters VARCHAR2(30);
|
||||
v_nls_date_format VARCHAR2(30);
|
||||
v_nls_timestamp_format VARCHAR2(30);
|
||||
v_nls_timestamp_tz_format VARCHAR2(30);
|
||||
c_sqlplus_max_line_length CONSTANT PLS_INTEGER := 2400;
|
||||
v_line_cache VARCHAR2(2498 CHAR);
|
||||
v_line_size PLS_INTEGER := 0;
|
||||
v_buffer_varchar2 VARCHAR2(32767 CHAR);
|
||||
v_buffer_clob CLOB;
|
||||
v_buffer_xmltype XMLTYPE;
|
||||
v_buffer_long LONG;
|
||||
-- v_buffer_long LONG;
|
||||
v_buffer_long_length PLS_INTEGER;
|
||||
|
||||
--------------------------------------------------------------------------------------------------------------------------------
|
||||
----------------------------------------
|
||||
|
||||
PROCEDURE prepare_varchar2_buffer_for_scripting IS
|
||||
c_single_quote constant varchar2(1) := q'[']';
|
||||
c_double_quote constant varchar2(2) := q'['']';
|
||||
PROCEDURE set_session_nls_params IS
|
||||
BEGIN
|
||||
IF v_buffer_varchar2 IS NOT NULL THEN
|
||||
-- if we have the single quote character in the string then we
|
||||
-- have to double them
|
||||
v_buffer_varchar2 := c_single_quote ||
|
||||
case when instr(v_buffer_varchar2, c_single_quote) > 0
|
||||
then replace(v_buffer_varchar2, c_single_quote, c_double_quote)
|
||||
else v_buffer_varchar2
|
||||
end || c_single_quote;
|
||||
END IF;
|
||||
-- Save current values.
|
||||
for i in (SELECT parameter, value FROM nls_session_parameters) loop
|
||||
case i.parameter
|
||||
when 'NLS_NUMERIC_CHARACTERS' then v_nls_numeric_characters := i.value;
|
||||
when 'NLS_DATE_FORMAT' then v_nls_date_format := i.value;
|
||||
when 'NLS_TIMESTAMP_FORMAT' then v_nls_timestamp_format := i.value;
|
||||
when 'NLS_TIMESTAMP_TZ_FORMAT' then v_nls_timestamp_tz_format := i.value;
|
||||
else
|
||||
null;
|
||||
end case;
|
||||
end loop;
|
||||
-- Set new values.
|
||||
dbms_session.set_nls('nls_numeric_characters' , '''.,''');
|
||||
dbms_session.set_nls('nls_date_format' , '''yyyy-mm-dd hh24:mi:ss''');
|
||||
dbms_session.set_nls('nls_timestamp_format' , '''yyyy-mm-dd hh24:mi:ssxff''');
|
||||
dbms_session.set_nls('nls_timestamp_tz_format', '''yyyy-mm-dd hh24:mi:ssxff tzr''');
|
||||
END set_session_nls_params;
|
||||
|
||||
----------------------------------------
|
||||
|
||||
PROCEDURE recover_session_nls_params IS
|
||||
BEGIN
|
||||
dbms_session.set_nls('nls_numeric_characters' , '''' || v_nls_numeric_characters || '''');
|
||||
dbms_session.set_nls('nls_date_format' , '''' || v_nls_date_format || '''');
|
||||
dbms_session.set_nls('nls_timestamp_format' , '''' || v_nls_timestamp_format || '''');
|
||||
dbms_session.set_nls('nls_timestamp_tz_format', '''' || v_nls_timestamp_tz_format || '''');
|
||||
END recover_session_nls_params;
|
||||
|
||||
----------------------------------------
|
||||
|
||||
FUNCTION quote_string (p_string VARCHAR2) RETURN VARCHAR2 IS
|
||||
v_string varchar2(5000 char);
|
||||
BEGIN
|
||||
case
|
||||
when instr(p_string, '''') = 0 then v_string := '''' || p_string || '''';
|
||||
when instr(p_string, '^''') = 0 then v_string := 'q''^' || p_string || '^''';
|
||||
when instr(p_string, '`''') = 0 then v_string := 'q''`' || p_string || '`''';
|
||||
when instr(p_string, '#''') = 0 then v_string := 'q''#' || p_string || '#''';
|
||||
when instr(p_string, '|''') = 0 then v_string := 'q''|' || p_string || '|''';
|
||||
when instr(p_string, '!''') = 0 then v_string := 'q''!' || p_string || '!''';
|
||||
when instr(p_string, '}''') = 0 then v_string := 'q''{' || p_string || '}''';
|
||||
when instr(p_string, ']''') = 0 then v_string := 'q''[' || p_string || ']''';
|
||||
when instr(p_string, '>''') = 0 then v_string := 'q''<' || p_string || '>''';
|
||||
when instr(p_string, ')''') = 0 then v_string := 'q''(' || p_string || ')''';
|
||||
else
|
||||
v_string := '''' || replace(p_string, '''', '''''') || '''';
|
||||
end case;
|
||||
|
||||
-- SQL*Plus specific:
|
||||
-- SQL Failed With ORA-1756 In Sqlplus But Works In SQL Developer
|
||||
-- (Doc ID 2377701.1, https://support.oracle.com/epmos/faces/DocumentDisplay?id=2377701.1)
|
||||
if regexp_instr(v_string,';$',1,1,0,'m') = 0 then
|
||||
return v_string;
|
||||
else
|
||||
return ('regexp_replace(' || regexp_replace(v_string, ';$',';!',1,0,'m') || ','';!$'','';'',1,0,''m'')');
|
||||
end if;
|
||||
|
||||
END quote_string;
|
||||
|
||||
----------------------------------------
|
||||
|
||||
PROCEDURE line_append (p_content IN VARCHAR2) IS
|
||||
BEGIN
|
||||
v_line_cache := v_line_cache || p_content;
|
||||
EXCEPTION
|
||||
WHEN value_error THEN
|
||||
v_buffer_varchar2 := 'Value skipped - escaped text larger then ' || c_vc2_max_size || ' characters';
|
||||
END prepare_varchar2_buffer_for_scripting;
|
||||
util_clob_append(v_line_cache || c_crlf );
|
||||
v_line_cache := p_content;
|
||||
END line_append;
|
||||
|
||||
FUNCTION get_order_by_list RETURN VARCHAR2 IS
|
||||
----------------------------------------
|
||||
|
||||
PROCEDURE line_flush_cache IS
|
||||
BEGIN
|
||||
util_clob_append(v_line_cache || c_crlf);
|
||||
v_line_cache := null;
|
||||
END line_flush_cache;
|
||||
|
||||
----------------------------------------
|
||||
|
||||
PROCEDURE process_varchar2_buffer(p_type varchar2) IS
|
||||
v_length PLS_INTEGER;
|
||||
v_offset PLS_INTEGER;
|
||||
BEGIN
|
||||
v_length := nvl(length(v_buffer_varchar2), 0);
|
||||
IF v_length = 0 THEN
|
||||
line_append('NULL');
|
||||
ELSE
|
||||
CASE p_type
|
||||
WHEN 'NUMBER' THEN
|
||||
line_append(v_buffer_varchar2);
|
||||
WHEN 'STRING' THEN
|
||||
if v_length <= c_sqlplus_max_line_length then
|
||||
line_append(quote_string(v_buffer_varchar2));
|
||||
else
|
||||
v_offset := 1;
|
||||
while v_offset <= v_length loop
|
||||
line_append(case when v_offset != 1 then '|| ' end || quote_string(substr(v_buffer_varchar2, v_offset, c_sqlplus_max_line_length)));
|
||||
v_offset := v_offset + c_sqlplus_max_line_length;
|
||||
end loop;
|
||||
end if;
|
||||
WHEN 'RAW' THEN
|
||||
if v_length <= c_sqlplus_max_line_length then
|
||||
line_append('utl_raw.cast_to_raw(' || quote_string(v_buffer_varchar2) || ')');
|
||||
else
|
||||
v_offset := 1;
|
||||
line_append ('utl_raw.cast_to_raw(');
|
||||
while v_offset <= v_length loop
|
||||
line_append( case when v_offset != 1 then '|| ' end || quote_string(substr(v_buffer_varchar2, v_offset, c_sqlplus_max_line_length)) );
|
||||
v_offset := v_offset + c_sqlplus_max_line_length;
|
||||
end loop;
|
||||
line_append (')');
|
||||
end if;
|
||||
END CASE;
|
||||
v_buffer_varchar2 := null;
|
||||
END IF;
|
||||
END process_varchar2_buffer;
|
||||
|
||||
----------------------------------------
|
||||
|
||||
PROCEDURE process_clob_buffer IS
|
||||
v_length pls_integer;
|
||||
v_offset pls_integer;
|
||||
BEGIN
|
||||
v_length := nvl(length(v_buffer_clob), 0);
|
||||
if v_length = 0 then
|
||||
line_append('NULL');
|
||||
else
|
||||
if v_length <= c_sqlplus_max_line_length then
|
||||
line_append(quote_string(substr(v_buffer_clob, 1, c_sqlplus_max_line_length)));
|
||||
else
|
||||
v_offset := 1;
|
||||
while v_offset <= v_length loop
|
||||
line_append(case when v_offset != 1 then '|| ' end || 'to_clob(' || quote_string(substr(v_buffer_clob, v_offset, c_sqlplus_max_line_length)) || ')' );
|
||||
v_offset := v_offset + c_sqlplus_max_line_length;
|
||||
end loop;
|
||||
end if;
|
||||
v_buffer_clob := null;
|
||||
end if;
|
||||
END process_clob_buffer;
|
||||
|
||||
----------------------------------------
|
||||
|
||||
FUNCTION get_order_by_clause RETURN VARCHAR2 IS
|
||||
v_return varchar2(4000);
|
||||
begin
|
||||
-- try to use pk column list ...
|
||||
@ -1646,126 +1794,155 @@ IS
|
||||
end loop;
|
||||
end if;
|
||||
|
||||
return v_return;
|
||||
end;
|
||||
return case when v_return is not null then ' order by ' || v_return else null end;
|
||||
end get_order_by_clause;
|
||||
|
||||
----------------------------------------
|
||||
|
||||
PROCEDURE parse_query_and_describe_columns IS
|
||||
BEGIN
|
||||
FOR i IN (
|
||||
select 'select ' || listagg(column_name, ', ') within group (order by column_id) || ' from ' || table_name as query
|
||||
from user_tab_cols
|
||||
where table_name = p_table_name
|
||||
and user_generated = 'YES'
|
||||
and virtual_column = 'NO'
|
||||
group by table_name
|
||||
) LOOP
|
||||
v_query := i.query;
|
||||
END LOOP;
|
||||
IF v_query IS NOT NULL THEN
|
||||
v_cursor := dbms_sql.open_cursor;
|
||||
dbms_sql.parse(
|
||||
v_cursor,
|
||||
v_query || ' as of scn ' || p_data_scn || get_order_by_clause,
|
||||
dbms_sql.native);
|
||||
-- https://support.esri.com/en/technical-article/000010110
|
||||
-- http://bluefrog-oracle.blogspot.com/2011/11/describing-ref-cursor-using-dbmssql-api.html
|
||||
dbms_sql.describe_columns3(v_cursor, v_col_count, v_desc_tab);
|
||||
FOR i IN 1..v_col_count LOOP
|
||||
IF v_desc_tab(i).col_type = c_clob THEN
|
||||
dbms_sql.define_column(v_cursor, i, v_buffer_clob);
|
||||
ELSIF v_desc_tab(i).col_type = c_long THEN
|
||||
dbms_sql.define_column_long(v_cursor, i);
|
||||
ELSE
|
||||
dbms_sql.define_column(v_cursor, i, v_buffer_varchar2, c_vc2_max_size);
|
||||
END IF;
|
||||
v_table_insert_prefix := v_table_insert_prefix || v_desc_tab(i).col_name || ',';
|
||||
END LOOP;
|
||||
v_table_insert_prefix :=
|
||||
case when p_insert_all_size > 0
|
||||
then 'into '
|
||||
else 'insert into '
|
||||
end || p_table_name || '(' || rtrim(v_table_insert_prefix, ',' ) || ') values (';
|
||||
v_ignore_me := dbms_sql.execute(v_cursor);
|
||||
END IF;
|
||||
END parse_query_and_describe_columns;
|
||||
|
||||
----------------------------------------
|
||||
|
||||
-- SQL*Plus specific:
|
||||
-- SQL Failed With ORA-1756 In Sqlplus But Works In SQL Developer
|
||||
-- (Doc ID 2377701.1, https://support.oracle.com/epmos/faces/DocumentDisplay?id=2377701.1)
|
||||
|
||||
PROCEDURE create_header IS
|
||||
BEGIN
|
||||
util_clob_append('-- Script generated by PLEX version ' || c_plex_version || ' - more infos here: ' || c_plex_url || c_crlf);
|
||||
util_clob_append('-- Performance Hacks by Connor McDonald: https://connor-mcdonald.com/2019/05/17/hacking-together-faster-inserts/' || c_crlf);
|
||||
util_clob_append('-- For strange line end replacements a big thank to SQL*Plus: https://support.oracle.com/epmos/faces/DocumentDisplay?id=2377701.1 (SQL Failed With ORA-1756 In Sqlplus But Works In SQL Developer)' || c_crlf);
|
||||
util_clob_append('prompt Insert into ' || p_table_name || c_crlf);
|
||||
util_clob_append('timing start inserts' || c_crlf);
|
||||
util_clob_append('set define off feedback off sqlblanklines on' || c_crlf);
|
||||
util_clob_append('alter session set cursor_sharing = force;' || c_crlf);
|
||||
util_clob_append(q'^alter session set nls_numeric_characters = '.,';^' || c_crlf);
|
||||
util_clob_append(q'^alter session set nls_date_format = 'yyyy-mm-dd hh24:mi:ss';^' || c_crlf);
|
||||
util_clob_append(q'^alter session set nls_timestamp_format = 'yyyy-mm-dd hh24:mi:ssxff';^' || c_crlf);
|
||||
util_clob_append(q'^alter session set nls_timestamp_tz_format = 'yyyy-mm-dd hh24:mi:ssxff tzr';^' || c_crlf);
|
||||
END create_header;
|
||||
|
||||
----------------------------------------
|
||||
|
||||
PROCEDURE create_data IS
|
||||
BEGIN
|
||||
LOOP
|
||||
EXIT WHEN dbms_sql.fetch_rows(v_cursor) = 0 OR v_data_count = p_max_rows;
|
||||
v_data_count := v_data_count + 1;
|
||||
if v_data_count = 1 then
|
||||
create_header;
|
||||
end if;
|
||||
if p_insert_all_size > 0 and mod(v_data_count, p_insert_all_size) = 1 then
|
||||
util_clob_append('insert all' || c_crlf);
|
||||
end if;
|
||||
line_append(v_table_insert_prefix);
|
||||
--> process row
|
||||
FOR i IN 1..v_col_count LOOP
|
||||
IF v_desc_tab(i).col_type = c_clob THEN
|
||||
dbms_sql.column_value(v_cursor, i, v_buffer_clob);
|
||||
process_clob_buffer;
|
||||
ELSIF v_desc_tab(i).col_type = c_long THEN
|
||||
dbms_sql.column_value_long(v_cursor, i, c_vc2_max_size, 0, v_buffer_varchar2, v_buffer_long_length);
|
||||
if v_buffer_long_length > c_vc2_max_size then
|
||||
v_buffer_varchar2 := null;
|
||||
end if;
|
||||
process_varchar2_buffer('STRING');
|
||||
ELSIF v_desc_tab(i).col_type = c_xmltype THEN
|
||||
dbms_sql.column_value(v_cursor, i, v_buffer_varchar2);
|
||||
v_buffer_varchar2 := regexp_replace(v_buffer_varchar2, '\s*$', null);
|
||||
process_varchar2_buffer('STRING');
|
||||
ELSE
|
||||
dbms_sql.column_value(v_cursor, i, v_buffer_varchar2);
|
||||
IF v_desc_tab(i).col_type IN (c_number, c_binary_float, c_binary_double) THEN
|
||||
process_varchar2_buffer('NUMBER');
|
||||
ELSIF v_desc_tab(i).col_type IN (c_raw, c_long_raw, c_blob, c_bfile) THEN
|
||||
process_varchar2_buffer('RAW');
|
||||
ELSE
|
||||
process_varchar2_buffer('STRING');
|
||||
END IF;
|
||||
END IF;
|
||||
if i != v_col_count then
|
||||
line_append(',');
|
||||
else
|
||||
line_append(')' || case when p_insert_all_size < 1 then ';' end);
|
||||
line_flush_cache;
|
||||
end if;
|
||||
END LOOP;
|
||||
--< end process row
|
||||
if p_insert_all_size > 0 and mod(v_data_count, p_insert_all_size) = 0 then
|
||||
util_clob_append('select * from dual;' || c_crlf);
|
||||
end if;
|
||||
|
||||
END LOOP;
|
||||
dbms_sql.close_cursor(v_cursor);
|
||||
END create_data;
|
||||
|
||||
----------------------------------------
|
||||
|
||||
PROCEDURE create_footer IS
|
||||
BEGIN
|
||||
if v_data_count = 0 then
|
||||
util_clob_append('Prompt Nothing to insert - there was no data in the source table ' || p_table_name || c_crlf);
|
||||
else
|
||||
if p_insert_all_size > 0 and mod(v_data_count, p_insert_all_size) != 0 then
|
||||
util_clob_append('select * from dual;' || c_crlf);
|
||||
end if;
|
||||
util_clob_append('commit;' || c_crlf);
|
||||
util_clob_append('alter session set cursor_sharing = exact;' || c_crlf);
|
||||
util_clob_append('timing stop' || c_crlf);
|
||||
end if;
|
||||
util_clob_append('' || c_crlf);
|
||||
END create_footer;
|
||||
|
||||
----------------------------------------
|
||||
|
||||
BEGIN
|
||||
IF p_table_name IS NOT NULL THEN
|
||||
v_cursor := dbms_sql.open_cursor;
|
||||
dbms_sql.parse(
|
||||
v_cursor,
|
||||
'select * from ' || p_table_name || ' order by ' || get_order_by_list,
|
||||
dbms_sql.native);
|
||||
-- https://support.esri.com/en/technical-article/000010110
|
||||
-- http://bluefrog-oracle.blogspot.com/2011/11/describing-ref-cursor-using-dbmssql-api.html
|
||||
dbms_sql.describe_columns3(v_cursor, v_col_cnt, v_desc_tab);
|
||||
FOR i IN 1..v_col_cnt LOOP
|
||||
IF v_desc_tab(i).col_type = c_clob THEN
|
||||
dbms_sql.define_column(v_cursor, i, v_buffer_clob);
|
||||
ELSIF v_desc_tab(i).col_type = c_xmltype THEN
|
||||
dbms_sql.define_column(v_cursor, i, v_buffer_xmltype);
|
||||
ELSIF v_desc_tab(i).col_type = c_long THEN
|
||||
dbms_sql.define_column_long(v_cursor, i);
|
||||
ELSIF v_desc_tab(i).col_type IN (c_raw, c_long_raw, c_blob, c_bfile) THEN
|
||||
NULL; --> we ignore binary data types
|
||||
ELSE
|
||||
dbms_sql.define_column(v_cursor, i, v_buffer_varchar2, c_vc2_max_size);
|
||||
END IF;
|
||||
END LOOP;
|
||||
v_ignore_me := dbms_sql.execute(v_cursor);
|
||||
|
||||
-- create header
|
||||
util_clob_append('-- Script generated by PLEX version ' || c_plex_version || c_crlf);
|
||||
util_clob_append('-- More infos here: ' || c_plex_url || c_crlf);
|
||||
util_clob_append('' || c_crlf);
|
||||
util_clob_append('set define off feedback off timing on' || c_crlf);
|
||||
util_clob_append('prompt Insert into ' || p_table_name || c_crlf);
|
||||
util_clob_append('' || c_crlf);
|
||||
util_clob_append('DECLARE' || c_crlf);
|
||||
util_clob_append(' TYPE row_collection IS TABLE OF ' || p_table_name || '%rowtype INDEX BY PLS_INTEGER;' || c_crlf);
|
||||
util_clob_append(' t row_collection;' || c_crlf);
|
||||
util_clob_append('BEGIN' || c_crlf);
|
||||
|
||||
-- create data
|
||||
LOOP
|
||||
EXIT WHEN dbms_sql.fetch_rows(v_cursor) = 0 OR v_data_count = p_max_rows;
|
||||
v_data_count := v_data_count + 1;
|
||||
-- start new table row
|
||||
util_clob_append(' --' || c_crlf);
|
||||
|
||||
FOR i IN 1..v_col_cnt LOOP
|
||||
-- start column
|
||||
util_clob_append(' t(' || v_data_count || ').' || v_desc_tab(i).col_name || ' := ');
|
||||
|
||||
IF v_desc_tab(i).col_type = c_clob THEN
|
||||
dbms_sql.column_value(v_cursor, i, v_buffer_clob);
|
||||
IF length(v_buffer_clob) <= c_vc2_max_size THEN
|
||||
v_buffer_varchar2 := substr(v_buffer_clob, 1, c_vc2_max_size);
|
||||
prepare_varchar2_buffer_for_scripting;
|
||||
util_clob_append(v_buffer_varchar2);
|
||||
ELSE
|
||||
v_buffer_varchar2 := 'CLOB value skipped - larger then ' || c_vc2_max_size || ' characters';
|
||||
util_clob_append(v_buffer_varchar2);
|
||||
END IF;
|
||||
ELSIF v_desc_tab(i).col_type = c_xmltype THEN
|
||||
dbms_sql.column_value(v_cursor, i, v_buffer_xmltype);
|
||||
v_buffer_clob := v_buffer_xmltype.getclobval();
|
||||
IF length(v_buffer_clob) <= c_vc2_max_size THEN
|
||||
v_buffer_varchar2 := substr(v_buffer_clob, 1, c_vc2_max_size);
|
||||
prepare_varchar2_buffer_for_scripting;
|
||||
util_clob_append(v_buffer_varchar2);
|
||||
ELSE
|
||||
v_buffer_varchar2 := 'XML value skipped - larger then ' || c_vc2_max_size || ' characters';
|
||||
util_clob_append(v_buffer_varchar2);
|
||||
END IF;
|
||||
ELSIF v_desc_tab(i).col_type = c_long THEN
|
||||
dbms_sql.column_value_long(v_cursor, i, c_vc2_max_size, 0, v_buffer_varchar2, v_buffer_long_length);
|
||||
IF v_buffer_long_length <= c_vc2_max_size THEN
|
||||
prepare_varchar2_buffer_for_scripting;
|
||||
util_clob_append(v_buffer_varchar2);
|
||||
ELSE
|
||||
util_clob_append('LONG value skipped - larger then ' || c_vc2_max_size || ' characters');
|
||||
END IF;
|
||||
ELSIF v_desc_tab(i).col_type IN (c_raw, c_long_raw, c_blob, c_bfile) THEN
|
||||
util_clob_append('Binary data type skipped - currently not supported');
|
||||
ELSE
|
||||
dbms_sql.column_value(v_cursor, i, v_buffer_varchar2);
|
||||
prepare_varchar2_buffer_for_scripting;
|
||||
util_clob_append(v_buffer_varchar2);
|
||||
END IF;
|
||||
-- end column
|
||||
util_clob_append(';' || c_crlf);
|
||||
END LOOP;
|
||||
END LOOP;
|
||||
dbms_sql.close_cursor(v_cursor);
|
||||
|
||||
-- create forall insert
|
||||
if v_data_count = 0 then
|
||||
util_clob_append(' NULL; -- No data found in table :-(' || c_crlf);
|
||||
util_clob_append('END;' || c_crlf);
|
||||
util_clob_append('/' || c_crlf);
|
||||
else
|
||||
util_clob_append(' --' || c_crlf);
|
||||
util_clob_append(' FORALL i IN 1..t.count' || c_crlf);
|
||||
util_clob_append(' INSERT INTO "' || p_table_name || '" (' || c_crlf);
|
||||
FOR i IN 1..v_col_cnt LOOP
|
||||
util_clob_append(' "' || v_desc_tab(i).col_name || '"'
|
||||
|| case when i != v_col_cnt then ',' end
|
||||
|| c_crlf);
|
||||
end loop;
|
||||
util_clob_append(' ) VALUES (' || c_crlf);
|
||||
FOR i IN 1..v_col_cnt LOOP
|
||||
util_clob_append(' t(i)."' || v_desc_tab(i).col_name || '"'
|
||||
|| case when i != v_col_cnt then ',' end
|
||||
|| c_crlf);
|
||||
end loop;
|
||||
util_clob_append(' );' || c_crlf);
|
||||
util_clob_append('END;' || c_crlf);
|
||||
util_clob_append('/' || c_crlf);
|
||||
util_clob_append('' || c_crlf);
|
||||
util_clob_append('COMMIT;' || c_crlf);
|
||||
util_clob_append('' || c_crlf);
|
||||
end if;
|
||||
--dbms_lob.createtemporary(v_buffer_clob, true);
|
||||
set_session_nls_params;
|
||||
parse_query_and_describe_columns;
|
||||
create_data;
|
||||
create_footer;
|
||||
recover_session_nls_params;
|
||||
--dbms_lob.freetemporary(v_buffer_clob);
|
||||
END IF;
|
||||
END util_clob_table_to_insert;
|
||||
|
||||
@ -2388,7 +2565,8 @@ SELECT DISTINCT
|
||||
'{{BASE_PATH_APP_BACKEND}}/grants/' || p.privilege || '_on_' || p.table_name || '.sql' AS file_path
|
||||
FROM user_tab_privs p
|
||||
JOIN user_objects o ON p.table_name = o.object_name
|
||||
WHERE (#NAME_LIKE_EXPRESSIONS#)
|
||||
WHERE table_name not like 'SYS_PLSQL%'
|
||||
AND (#NAME_LIKE_EXPRESSIONS#)
|
||||
AND (#NAME_NOT_LIKE_EXPRESSIONS#)
|
||||
ORDER BY
|
||||
privilege,
|
||||
@ -2629,8 +2807,8 @@ prompt --install_web_services_generated_by_ords
|
||||
|
||||
PROCEDURE process_data IS
|
||||
TYPE obj_rec_typ IS RECORD (
|
||||
table_name VARCHAR2(256),
|
||||
pk_columns VARCHAR2(4000));
|
||||
table_name VARCHAR2(256),
|
||||
pk_columns VARCHAR2(4000));
|
||||
v_rec obj_rec_typ;
|
||||
BEGIN
|
||||
util_log_start(p_base_path_data || '/open_tables_cursor');
|
||||
@ -2669,7 +2847,7 @@ SELECT table_name,
|
||||
EXIT WHEN v_cur%notfound;
|
||||
|
||||
-- csv file
|
||||
IF lower(p_data_format) LIKE '%csv%' THEN
|
||||
IF upper(p_data_format) LIKE '%CSV%' THEN
|
||||
BEGIN
|
||||
v_file_path := p_base_path_data || '/' || v_rec.table_name || '.csv';
|
||||
util_log_start(v_file_path);
|
||||
@ -2692,11 +2870,15 @@ SELECT table_name,
|
||||
END IF;
|
||||
|
||||
-- insert script
|
||||
IF lower(p_data_format) LIKE '%insert%' THEN
|
||||
IF upper(p_data_format) LIKE '%INSERT%' THEN
|
||||
BEGIN
|
||||
v_file_path := p_base_path_data || '/' || v_rec.table_name || '.sql';
|
||||
util_log_start(v_file_path);
|
||||
util_clob_table_to_insert(p_table_name => v_rec.table_name);
|
||||
util_clob_table_to_insert(
|
||||
p_table_name => v_rec.table_name,
|
||||
p_data_scn => v_data_scn,
|
||||
p_max_rows => p_data_max_rows,
|
||||
p_insert_all_size => to_number(nvl(regexp_substr(p_data_format,'insert:(\d+)',1,1,'i',1), '10')));
|
||||
util_clob_add_to_export_files(
|
||||
p_export_files => v_export_files,
|
||||
p_name => v_file_path);
|
||||
|
||||
506
src/PLEX.pkb
506
src/PLEX.pkb
@ -16,16 +16,16 @@ c_vc2_max_size CONSTANT PLS_INTEGER := 32767;
|
||||
c_zip_local_file_header CONSTANT RAW(4) := hextoraw('504B0304');
|
||||
c_zip_end_of_central_directory CONSTANT RAW(4) := hextoraw('504B0506');
|
||||
-- numeric type identfiers
|
||||
c_number CONSTANT PLS_INTEGER := 2; -- FLOAT
|
||||
c_number CONSTANT PLS_INTEGER := 2; -- FLOAT
|
||||
c_binary_float CONSTANT PLS_INTEGER := 100;
|
||||
c_binary_double CONSTANT PLS_INTEGER := 101;
|
||||
-- string type identfiers
|
||||
c_char CONSTANT PLS_INTEGER := 96; -- NCHAR
|
||||
c_varchar2 CONSTANT PLS_INTEGER := 1; -- NVARCHAR2
|
||||
c_char CONSTANT PLS_INTEGER := 96; -- NCHAR
|
||||
c_varchar2 CONSTANT PLS_INTEGER := 1; -- NVARCHAR2
|
||||
c_long CONSTANT PLS_INTEGER := 8;
|
||||
c_clob CONSTANT PLS_INTEGER := 112; -- NCLOB
|
||||
c_xmltype CONSTANT PLS_INTEGER := 109; -- ANYDATA, ANYDATASET, ANYTYPE, Object type, VARRAY, Nested table
|
||||
c_rowid CONSTANT PLS_INTEGER := 11;
|
||||
c_rowid CONSTANT PLS_INTEGER := 69;
|
||||
c_urowid CONSTANT PLS_INTEGER := 208;
|
||||
-- binary type identfiers
|
||||
c_raw CONSTANT PLS_INTEGER := 23;
|
||||
@ -35,8 +35,8 @@ c_bfile CONSTANT PLS_INTEGER := 114;
|
||||
-- date type identfiers
|
||||
c_date CONSTANT PLS_INTEGER := 12;
|
||||
c_timestamp CONSTANT PLS_INTEGER := 180;
|
||||
c_timestamp_with_time_zone CONSTANT PLS_INTEGER := 181;
|
||||
c_timestamp_with_local_tz CONSTANT PLS_INTEGER := 231;
|
||||
c_timestamp_tz CONSTANT PLS_INTEGER := 181;
|
||||
c_timestamp_ltz CONSTANT PLS_INTEGER := 231;
|
||||
-- interval type identfiers
|
||||
c_interval_year_to_month CONSTANT PLS_INTEGER := 182;
|
||||
c_interval_day_to_second CONSTANT PLS_INTEGER := 183;
|
||||
@ -204,8 +204,10 @@ PROCEDURE util_clob_query_to_csv (
|
||||
p_header_prefix IN VARCHAR2 DEFAULT NULL);
|
||||
|
||||
PROCEDURE util_clob_table_to_insert (
|
||||
p_table_name IN VARCHAR2,
|
||||
p_max_rows IN NUMBER DEFAULT 1000);
|
||||
p_table_name IN VARCHAR2,
|
||||
p_data_scn IN NUMBER,
|
||||
p_max_rows IN NUMBER DEFAULT 1000,
|
||||
p_insert_all_size IN NUMBER DEFAULT 10);
|
||||
|
||||
PROCEDURE util_clob_create_runtime_log (p_export_files IN OUT NOCOPY tab_export_files);
|
||||
|
||||
@ -808,7 +810,7 @@ IS
|
||||
v_cursor PLS_INTEGER;
|
||||
v_ignore_me PLS_INTEGER;
|
||||
v_data_count PLS_INTEGER := 0;
|
||||
v_col_cnt PLS_INTEGER;
|
||||
v_col_count PLS_INTEGER;
|
||||
v_desc_tab dbms_sql.desc_tab3;
|
||||
v_buffer_varchar2 VARCHAR2(32767 CHAR);
|
||||
v_buffer_clob CLOB;
|
||||
@ -847,8 +849,8 @@ BEGIN
|
||||
dbms_sql.native);
|
||||
-- https://support.esri.com/en/technical-article/000010110
|
||||
-- http://bluefrog-oracle.blogspot.com/2011/11/describing-ref-cursor-using-dbmssql-api.html
|
||||
dbms_sql.describe_columns3(v_cursor, v_col_cnt, v_desc_tab);
|
||||
FOR i IN 1..v_col_cnt LOOP
|
||||
dbms_sql.describe_columns3(v_cursor, v_col_count, v_desc_tab);
|
||||
FOR i IN 1..v_col_count LOOP
|
||||
IF v_desc_tab(i).col_type = c_clob THEN
|
||||
dbms_sql.define_column(v_cursor, i, v_buffer_clob);
|
||||
ELSIF v_desc_tab(i).col_type = c_xmltype THEN
|
||||
@ -865,7 +867,7 @@ BEGIN
|
||||
|
||||
-- create header
|
||||
util_clob_append(p_header_prefix);
|
||||
FOR i IN 1..v_col_cnt LOOP
|
||||
FOR i IN 1..v_col_count LOOP
|
||||
IF i > 1 THEN
|
||||
util_clob_append(p_delimiter);
|
||||
END IF;
|
||||
@ -878,7 +880,7 @@ BEGIN
|
||||
-- create data
|
||||
LOOP
|
||||
EXIT WHEN dbms_sql.fetch_rows(v_cursor) = 0 OR v_data_count = p_max_rows;
|
||||
FOR i IN 1..v_col_cnt LOOP
|
||||
FOR i IN 1..v_col_count LOOP
|
||||
IF i > 1 THEN
|
||||
util_clob_append(p_delimiter);
|
||||
END IF;
|
||||
@ -894,14 +896,16 @@ BEGIN
|
||||
END IF;
|
||||
ELSIF v_desc_tab(i).col_type = c_xmltype THEN
|
||||
dbms_sql.column_value(v_cursor, i, v_buffer_xmltype);
|
||||
v_buffer_clob := v_buffer_xmltype.getclobval();
|
||||
IF length(v_buffer_clob) <= c_vc2_max_size THEN
|
||||
v_buffer_varchar2 := substr(v_buffer_clob, 1, c_vc2_max_size);
|
||||
escape_varchar2_buffer_for_csv;
|
||||
util_clob_append(v_buffer_varchar2);
|
||||
ELSE
|
||||
v_buffer_varchar2 := 'XML value skipped - larger then ' || c_vc2_max_size || ' characters';
|
||||
util_clob_append(v_buffer_varchar2);
|
||||
IF v_buffer_xmltype IS NOT NULL THEN
|
||||
v_buffer_clob := v_buffer_xmltype.getclobval();
|
||||
IF length(v_buffer_clob) <= c_vc2_max_size THEN
|
||||
v_buffer_varchar2 := substr(v_buffer_clob, 1, c_vc2_max_size);
|
||||
escape_varchar2_buffer_for_csv;
|
||||
util_clob_append(v_buffer_varchar2);
|
||||
ELSE
|
||||
v_buffer_varchar2 := 'XML value skipped - larger then ' || c_vc2_max_size || ' characters';
|
||||
util_clob_append(v_buffer_varchar2);
|
||||
END IF;
|
||||
END IF;
|
||||
ELSIF v_desc_tab(i).col_type = c_long THEN
|
||||
dbms_sql.column_value_long(v_cursor, i, c_vc2_max_size, 0, v_buffer_varchar2, v_buffer_long_length);
|
||||
@ -926,42 +930,182 @@ BEGIN
|
||||
END IF;
|
||||
END util_clob_query_to_csv;
|
||||
|
||||
--------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
PROCEDURE util_clob_table_to_insert (
|
||||
p_table_name IN VARCHAR2,
|
||||
p_max_rows IN NUMBER DEFAULT 1000)
|
||||
p_table_name IN VARCHAR2,
|
||||
p_data_scn IN NUMBER,
|
||||
p_max_rows IN NUMBER DEFAULT 1000,
|
||||
p_insert_all_size IN NUMBER DEFAULT 10)
|
||||
IS
|
||||
v_query VARCHAR2(32767);
|
||||
v_cursor PLS_INTEGER;
|
||||
v_ignore_me PLS_INTEGER;
|
||||
v_data_count PLS_INTEGER := 0;
|
||||
v_col_cnt PLS_INTEGER;
|
||||
v_col_count PLS_INTEGER;
|
||||
v_desc_tab dbms_sql.desc_tab3;
|
||||
v_table_insert_prefix VARCHAR2(4000);
|
||||
v_nls_numeric_characters VARCHAR2(30);
|
||||
v_nls_date_format VARCHAR2(30);
|
||||
v_nls_timestamp_format VARCHAR2(30);
|
||||
v_nls_timestamp_tz_format VARCHAR2(30);
|
||||
c_sqlplus_max_line_length CONSTANT PLS_INTEGER := 2400;
|
||||
v_line_cache VARCHAR2(2498 CHAR);
|
||||
v_line_size PLS_INTEGER := 0;
|
||||
v_buffer_varchar2 VARCHAR2(32767 CHAR);
|
||||
v_buffer_clob CLOB;
|
||||
v_buffer_xmltype XMLTYPE;
|
||||
v_buffer_long LONG;
|
||||
-- v_buffer_long LONG;
|
||||
v_buffer_long_length PLS_INTEGER;
|
||||
|
||||
--------------------------------------------------------------------------------------------------------------------------------
|
||||
----------------------------------------
|
||||
|
||||
PROCEDURE prepare_varchar2_buffer_for_scripting IS
|
||||
c_single_quote constant varchar2(1) := q'[']';
|
||||
c_double_quote constant varchar2(2) := q'['']';
|
||||
PROCEDURE set_session_nls_params IS
|
||||
BEGIN
|
||||
IF v_buffer_varchar2 IS NOT NULL THEN
|
||||
-- if we have the single quote character in the string then we
|
||||
-- have to double them
|
||||
v_buffer_varchar2 := c_single_quote ||
|
||||
case when instr(v_buffer_varchar2, c_single_quote) > 0
|
||||
then replace(v_buffer_varchar2, c_single_quote, c_double_quote)
|
||||
else v_buffer_varchar2
|
||||
end || c_single_quote;
|
||||
END IF;
|
||||
-- Save current values.
|
||||
for i in (SELECT parameter, value FROM nls_session_parameters) loop
|
||||
case i.parameter
|
||||
when 'NLS_NUMERIC_CHARACTERS' then v_nls_numeric_characters := i.value;
|
||||
when 'NLS_DATE_FORMAT' then v_nls_date_format := i.value;
|
||||
when 'NLS_TIMESTAMP_FORMAT' then v_nls_timestamp_format := i.value;
|
||||
when 'NLS_TIMESTAMP_TZ_FORMAT' then v_nls_timestamp_tz_format := i.value;
|
||||
else
|
||||
null;
|
||||
end case;
|
||||
end loop;
|
||||
-- Set new values.
|
||||
dbms_session.set_nls('nls_numeric_characters' , '''.,''');
|
||||
dbms_session.set_nls('nls_date_format' , '''yyyy-mm-dd hh24:mi:ss''');
|
||||
dbms_session.set_nls('nls_timestamp_format' , '''yyyy-mm-dd hh24:mi:ssxff''');
|
||||
dbms_session.set_nls('nls_timestamp_tz_format', '''yyyy-mm-dd hh24:mi:ssxff tzr''');
|
||||
END set_session_nls_params;
|
||||
|
||||
----------------------------------------
|
||||
|
||||
PROCEDURE recover_session_nls_params IS
|
||||
BEGIN
|
||||
dbms_session.set_nls('nls_numeric_characters' , '''' || v_nls_numeric_characters || '''');
|
||||
dbms_session.set_nls('nls_date_format' , '''' || v_nls_date_format || '''');
|
||||
dbms_session.set_nls('nls_timestamp_format' , '''' || v_nls_timestamp_format || '''');
|
||||
dbms_session.set_nls('nls_timestamp_tz_format', '''' || v_nls_timestamp_tz_format || '''');
|
||||
END recover_session_nls_params;
|
||||
|
||||
----------------------------------------
|
||||
|
||||
FUNCTION quote_string (p_string VARCHAR2) RETURN VARCHAR2 IS
|
||||
v_string varchar2(5000 char);
|
||||
BEGIN
|
||||
case
|
||||
when instr(p_string, '''') = 0 then v_string := '''' || p_string || '''';
|
||||
when instr(p_string, '^''') = 0 then v_string := 'q''^' || p_string || '^''';
|
||||
when instr(p_string, '`''') = 0 then v_string := 'q''`' || p_string || '`''';
|
||||
when instr(p_string, '#''') = 0 then v_string := 'q''#' || p_string || '#''';
|
||||
when instr(p_string, '|''') = 0 then v_string := 'q''|' || p_string || '|''';
|
||||
when instr(p_string, '!''') = 0 then v_string := 'q''!' || p_string || '!''';
|
||||
when instr(p_string, '}''') = 0 then v_string := 'q''{' || p_string || '}''';
|
||||
when instr(p_string, ']''') = 0 then v_string := 'q''[' || p_string || ']''';
|
||||
when instr(p_string, '>''') = 0 then v_string := 'q''<' || p_string || '>''';
|
||||
when instr(p_string, ')''') = 0 then v_string := 'q''(' || p_string || ')''';
|
||||
else
|
||||
v_string := '''' || replace(p_string, '''', '''''') || '''';
|
||||
end case;
|
||||
|
||||
-- SQL*Plus specific:
|
||||
-- SQL Failed With ORA-1756 In Sqlplus But Works In SQL Developer
|
||||
-- (Doc ID 2377701.1, https://support.oracle.com/epmos/faces/DocumentDisplay?id=2377701.1)
|
||||
if regexp_instr(v_string,';$',1,1,0,'m') = 0 then
|
||||
return v_string;
|
||||
else
|
||||
return ('regexp_replace(' || regexp_replace(v_string, ';$',';!',1,0,'m') || ','';!$'','';'',1,0,''m'')');
|
||||
end if;
|
||||
|
||||
END quote_string;
|
||||
|
||||
----------------------------------------
|
||||
|
||||
PROCEDURE line_append (p_content IN VARCHAR2) IS
|
||||
BEGIN
|
||||
v_line_cache := v_line_cache || p_content;
|
||||
EXCEPTION
|
||||
WHEN value_error THEN
|
||||
v_buffer_varchar2 := 'Value skipped - escaped text larger then ' || c_vc2_max_size || ' characters';
|
||||
END prepare_varchar2_buffer_for_scripting;
|
||||
util_clob_append(v_line_cache || c_crlf );
|
||||
v_line_cache := p_content;
|
||||
END line_append;
|
||||
|
||||
FUNCTION get_order_by_list RETURN VARCHAR2 IS
|
||||
----------------------------------------
|
||||
|
||||
PROCEDURE line_flush_cache IS
|
||||
BEGIN
|
||||
util_clob_append(v_line_cache || c_crlf);
|
||||
v_line_cache := null;
|
||||
END line_flush_cache;
|
||||
|
||||
----------------------------------------
|
||||
|
||||
PROCEDURE process_varchar2_buffer(p_type varchar2) IS
|
||||
v_length PLS_INTEGER;
|
||||
v_offset PLS_INTEGER;
|
||||
BEGIN
|
||||
v_length := nvl(length(v_buffer_varchar2), 0);
|
||||
IF v_length = 0 THEN
|
||||
line_append('NULL');
|
||||
ELSE
|
||||
CASE p_type
|
||||
WHEN 'NUMBER' THEN
|
||||
line_append(v_buffer_varchar2);
|
||||
WHEN 'STRING' THEN
|
||||
if v_length <= c_sqlplus_max_line_length then
|
||||
line_append(quote_string(v_buffer_varchar2));
|
||||
else
|
||||
v_offset := 1;
|
||||
while v_offset <= v_length loop
|
||||
line_append(case when v_offset != 1 then '|| ' end || quote_string(substr(v_buffer_varchar2, v_offset, c_sqlplus_max_line_length)));
|
||||
v_offset := v_offset + c_sqlplus_max_line_length;
|
||||
end loop;
|
||||
end if;
|
||||
WHEN 'RAW' THEN
|
||||
if v_length <= c_sqlplus_max_line_length then
|
||||
line_append('utl_raw.cast_to_raw(' || quote_string(v_buffer_varchar2) || ')');
|
||||
else
|
||||
v_offset := 1;
|
||||
line_append ('utl_raw.cast_to_raw(');
|
||||
while v_offset <= v_length loop
|
||||
line_append( case when v_offset != 1 then '|| ' end || quote_string(substr(v_buffer_varchar2, v_offset, c_sqlplus_max_line_length)) );
|
||||
v_offset := v_offset + c_sqlplus_max_line_length;
|
||||
end loop;
|
||||
line_append (')');
|
||||
end if;
|
||||
END CASE;
|
||||
v_buffer_varchar2 := null;
|
||||
END IF;
|
||||
END process_varchar2_buffer;
|
||||
|
||||
----------------------------------------
|
||||
|
||||
PROCEDURE process_clob_buffer IS
|
||||
v_length pls_integer;
|
||||
v_offset pls_integer;
|
||||
BEGIN
|
||||
v_length := nvl(length(v_buffer_clob), 0);
|
||||
if v_length = 0 then
|
||||
line_append('NULL');
|
||||
else
|
||||
if v_length <= c_sqlplus_max_line_length then
|
||||
line_append(quote_string(substr(v_buffer_clob, 1, c_sqlplus_max_line_length)));
|
||||
else
|
||||
v_offset := 1;
|
||||
while v_offset <= v_length loop
|
||||
line_append(case when v_offset != 1 then '|| ' end || 'to_clob(' || quote_string(substr(v_buffer_clob, v_offset, c_sqlplus_max_line_length)) || ')' );
|
||||
v_offset := v_offset + c_sqlplus_max_line_length;
|
||||
end loop;
|
||||
end if;
|
||||
v_buffer_clob := null;
|
||||
end if;
|
||||
END process_clob_buffer;
|
||||
|
||||
----------------------------------------
|
||||
|
||||
FUNCTION get_order_by_clause RETURN VARCHAR2 IS
|
||||
v_return varchar2(4000);
|
||||
begin
|
||||
-- try to use pk column list ...
|
||||
@ -1007,126 +1151,155 @@ IS
|
||||
end loop;
|
||||
end if;
|
||||
|
||||
return v_return;
|
||||
end;
|
||||
return case when v_return is not null then ' order by ' || v_return else null end;
|
||||
end get_order_by_clause;
|
||||
|
||||
----------------------------------------
|
||||
|
||||
PROCEDURE parse_query_and_describe_columns IS
|
||||
BEGIN
|
||||
FOR i IN (
|
||||
select 'select ' || listagg(column_name, ', ') within group (order by column_id) || ' from ' || table_name as query
|
||||
from user_tab_cols
|
||||
where table_name = p_table_name
|
||||
and user_generated = 'YES'
|
||||
and virtual_column = 'NO'
|
||||
group by table_name
|
||||
) LOOP
|
||||
v_query := i.query;
|
||||
END LOOP;
|
||||
IF v_query IS NOT NULL THEN
|
||||
v_cursor := dbms_sql.open_cursor;
|
||||
dbms_sql.parse(
|
||||
v_cursor,
|
||||
v_query || ' as of scn ' || p_data_scn || get_order_by_clause,
|
||||
dbms_sql.native);
|
||||
-- https://support.esri.com/en/technical-article/000010110
|
||||
-- http://bluefrog-oracle.blogspot.com/2011/11/describing-ref-cursor-using-dbmssql-api.html
|
||||
dbms_sql.describe_columns3(v_cursor, v_col_count, v_desc_tab);
|
||||
FOR i IN 1..v_col_count LOOP
|
||||
IF v_desc_tab(i).col_type = c_clob THEN
|
||||
dbms_sql.define_column(v_cursor, i, v_buffer_clob);
|
||||
ELSIF v_desc_tab(i).col_type = c_long THEN
|
||||
dbms_sql.define_column_long(v_cursor, i);
|
||||
ELSE
|
||||
dbms_sql.define_column(v_cursor, i, v_buffer_varchar2, c_vc2_max_size);
|
||||
END IF;
|
||||
v_table_insert_prefix := v_table_insert_prefix || v_desc_tab(i).col_name || ',';
|
||||
END LOOP;
|
||||
v_table_insert_prefix :=
|
||||
case when p_insert_all_size > 0
|
||||
then 'into '
|
||||
else 'insert into '
|
||||
end || p_table_name || '(' || rtrim(v_table_insert_prefix, ',' ) || ') values (';
|
||||
v_ignore_me := dbms_sql.execute(v_cursor);
|
||||
END IF;
|
||||
END parse_query_and_describe_columns;
|
||||
|
||||
----------------------------------------
|
||||
|
||||
-- SQL*Plus specific:
|
||||
-- SQL Failed With ORA-1756 In Sqlplus But Works In SQL Developer
|
||||
-- (Doc ID 2377701.1, https://support.oracle.com/epmos/faces/DocumentDisplay?id=2377701.1)
|
||||
|
||||
PROCEDURE create_header IS
|
||||
BEGIN
|
||||
util_clob_append('-- Script generated by PLEX version ' || c_plex_version || ' - more infos here: ' || c_plex_url || c_crlf);
|
||||
util_clob_append('-- Performance Hacks by Connor McDonald: https://connor-mcdonald.com/2019/05/17/hacking-together-faster-inserts/' || c_crlf);
|
||||
util_clob_append('-- For strange line end replacements a big thank to SQL*Plus: https://support.oracle.com/epmos/faces/DocumentDisplay?id=2377701.1 (SQL Failed With ORA-1756 In Sqlplus But Works In SQL Developer)' || c_crlf);
|
||||
util_clob_append('prompt Insert into ' || p_table_name || c_crlf);
|
||||
util_clob_append('timing start inserts' || c_crlf);
|
||||
util_clob_append('set define off feedback off sqlblanklines on' || c_crlf);
|
||||
util_clob_append('alter session set cursor_sharing = force;' || c_crlf);
|
||||
util_clob_append(q'^alter session set nls_numeric_characters = '.,';^' || c_crlf);
|
||||
util_clob_append(q'^alter session set nls_date_format = 'yyyy-mm-dd hh24:mi:ss';^' || c_crlf);
|
||||
util_clob_append(q'^alter session set nls_timestamp_format = 'yyyy-mm-dd hh24:mi:ssxff';^' || c_crlf);
|
||||
util_clob_append(q'^alter session set nls_timestamp_tz_format = 'yyyy-mm-dd hh24:mi:ssxff tzr';^' || c_crlf);
|
||||
END create_header;
|
||||
|
||||
----------------------------------------
|
||||
|
||||
PROCEDURE create_data IS
|
||||
BEGIN
|
||||
LOOP
|
||||
EXIT WHEN dbms_sql.fetch_rows(v_cursor) = 0 OR v_data_count = p_max_rows;
|
||||
v_data_count := v_data_count + 1;
|
||||
if v_data_count = 1 then
|
||||
create_header;
|
||||
end if;
|
||||
if p_insert_all_size > 0 and mod(v_data_count, p_insert_all_size) = 1 then
|
||||
util_clob_append('insert all' || c_crlf);
|
||||
end if;
|
||||
line_append(v_table_insert_prefix);
|
||||
--> process row
|
||||
FOR i IN 1..v_col_count LOOP
|
||||
IF v_desc_tab(i).col_type = c_clob THEN
|
||||
dbms_sql.column_value(v_cursor, i, v_buffer_clob);
|
||||
process_clob_buffer;
|
||||
ELSIF v_desc_tab(i).col_type = c_long THEN
|
||||
dbms_sql.column_value_long(v_cursor, i, c_vc2_max_size, 0, v_buffer_varchar2, v_buffer_long_length);
|
||||
if v_buffer_long_length > c_vc2_max_size then
|
||||
v_buffer_varchar2 := null;
|
||||
end if;
|
||||
process_varchar2_buffer('STRING');
|
||||
ELSIF v_desc_tab(i).col_type = c_xmltype THEN
|
||||
dbms_sql.column_value(v_cursor, i, v_buffer_varchar2);
|
||||
v_buffer_varchar2 := regexp_replace(v_buffer_varchar2, '\s*$', null);
|
||||
process_varchar2_buffer('STRING');
|
||||
ELSE
|
||||
dbms_sql.column_value(v_cursor, i, v_buffer_varchar2);
|
||||
IF v_desc_tab(i).col_type IN (c_number, c_binary_float, c_binary_double) THEN
|
||||
process_varchar2_buffer('NUMBER');
|
||||
ELSIF v_desc_tab(i).col_type IN (c_raw, c_long_raw, c_blob, c_bfile) THEN
|
||||
process_varchar2_buffer('RAW');
|
||||
ELSE
|
||||
process_varchar2_buffer('STRING');
|
||||
END IF;
|
||||
END IF;
|
||||
if i != v_col_count then
|
||||
line_append(',');
|
||||
else
|
||||
line_append(')' || case when p_insert_all_size < 1 then ';' end);
|
||||
line_flush_cache;
|
||||
end if;
|
||||
END LOOP;
|
||||
--< end process row
|
||||
if p_insert_all_size > 0 and mod(v_data_count, p_insert_all_size) = 0 then
|
||||
util_clob_append('select * from dual;' || c_crlf);
|
||||
end if;
|
||||
|
||||
END LOOP;
|
||||
dbms_sql.close_cursor(v_cursor);
|
||||
END create_data;
|
||||
|
||||
----------------------------------------
|
||||
|
||||
PROCEDURE create_footer IS
|
||||
BEGIN
|
||||
if v_data_count = 0 then
|
||||
util_clob_append('Prompt Nothing to insert - there was no data in the source table ' || p_table_name || c_crlf);
|
||||
else
|
||||
if p_insert_all_size > 0 and mod(v_data_count, p_insert_all_size) != 0 then
|
||||
util_clob_append('select * from dual;' || c_crlf);
|
||||
end if;
|
||||
util_clob_append('commit;' || c_crlf);
|
||||
util_clob_append('alter session set cursor_sharing = exact;' || c_crlf);
|
||||
util_clob_append('timing stop' || c_crlf);
|
||||
end if;
|
||||
util_clob_append('' || c_crlf);
|
||||
END create_footer;
|
||||
|
||||
----------------------------------------
|
||||
|
||||
BEGIN
|
||||
IF p_table_name IS NOT NULL THEN
|
||||
v_cursor := dbms_sql.open_cursor;
|
||||
dbms_sql.parse(
|
||||
v_cursor,
|
||||
'select * from ' || p_table_name || ' order by ' || get_order_by_list,
|
||||
dbms_sql.native);
|
||||
-- https://support.esri.com/en/technical-article/000010110
|
||||
-- http://bluefrog-oracle.blogspot.com/2011/11/describing-ref-cursor-using-dbmssql-api.html
|
||||
dbms_sql.describe_columns3(v_cursor, v_col_cnt, v_desc_tab);
|
||||
FOR i IN 1..v_col_cnt LOOP
|
||||
IF v_desc_tab(i).col_type = c_clob THEN
|
||||
dbms_sql.define_column(v_cursor, i, v_buffer_clob);
|
||||
ELSIF v_desc_tab(i).col_type = c_xmltype THEN
|
||||
dbms_sql.define_column(v_cursor, i, v_buffer_xmltype);
|
||||
ELSIF v_desc_tab(i).col_type = c_long THEN
|
||||
dbms_sql.define_column_long(v_cursor, i);
|
||||
ELSIF v_desc_tab(i).col_type IN (c_raw, c_long_raw, c_blob, c_bfile) THEN
|
||||
NULL; --> we ignore binary data types
|
||||
ELSE
|
||||
dbms_sql.define_column(v_cursor, i, v_buffer_varchar2, c_vc2_max_size);
|
||||
END IF;
|
||||
END LOOP;
|
||||
v_ignore_me := dbms_sql.execute(v_cursor);
|
||||
|
||||
-- create header
|
||||
util_clob_append('-- Script generated by PLEX version ' || c_plex_version || c_crlf);
|
||||
util_clob_append('-- More infos here: ' || c_plex_url || c_crlf);
|
||||
util_clob_append('' || c_crlf);
|
||||
util_clob_append('set define off feedback off timing on' || c_crlf);
|
||||
util_clob_append('prompt Insert into ' || p_table_name || c_crlf);
|
||||
util_clob_append('' || c_crlf);
|
||||
util_clob_append('DECLARE' || c_crlf);
|
||||
util_clob_append(' TYPE row_collection IS TABLE OF ' || p_table_name || '%rowtype INDEX BY PLS_INTEGER;' || c_crlf);
|
||||
util_clob_append(' t row_collection;' || c_crlf);
|
||||
util_clob_append('BEGIN' || c_crlf);
|
||||
|
||||
-- create data
|
||||
LOOP
|
||||
EXIT WHEN dbms_sql.fetch_rows(v_cursor) = 0 OR v_data_count = p_max_rows;
|
||||
v_data_count := v_data_count + 1;
|
||||
-- start new table row
|
||||
util_clob_append(' --' || c_crlf);
|
||||
|
||||
FOR i IN 1..v_col_cnt LOOP
|
||||
-- start column
|
||||
util_clob_append(' t(' || v_data_count || ').' || v_desc_tab(i).col_name || ' := ');
|
||||
|
||||
IF v_desc_tab(i).col_type = c_clob THEN
|
||||
dbms_sql.column_value(v_cursor, i, v_buffer_clob);
|
||||
IF length(v_buffer_clob) <= c_vc2_max_size THEN
|
||||
v_buffer_varchar2 := substr(v_buffer_clob, 1, c_vc2_max_size);
|
||||
prepare_varchar2_buffer_for_scripting;
|
||||
util_clob_append(v_buffer_varchar2);
|
||||
ELSE
|
||||
v_buffer_varchar2 := 'CLOB value skipped - larger then ' || c_vc2_max_size || ' characters';
|
||||
util_clob_append(v_buffer_varchar2);
|
||||
END IF;
|
||||
ELSIF v_desc_tab(i).col_type = c_xmltype THEN
|
||||
dbms_sql.column_value(v_cursor, i, v_buffer_xmltype);
|
||||
v_buffer_clob := v_buffer_xmltype.getclobval();
|
||||
IF length(v_buffer_clob) <= c_vc2_max_size THEN
|
||||
v_buffer_varchar2 := substr(v_buffer_clob, 1, c_vc2_max_size);
|
||||
prepare_varchar2_buffer_for_scripting;
|
||||
util_clob_append(v_buffer_varchar2);
|
||||
ELSE
|
||||
v_buffer_varchar2 := 'XML value skipped - larger then ' || c_vc2_max_size || ' characters';
|
||||
util_clob_append(v_buffer_varchar2);
|
||||
END IF;
|
||||
ELSIF v_desc_tab(i).col_type = c_long THEN
|
||||
dbms_sql.column_value_long(v_cursor, i, c_vc2_max_size, 0, v_buffer_varchar2, v_buffer_long_length);
|
||||
IF v_buffer_long_length <= c_vc2_max_size THEN
|
||||
prepare_varchar2_buffer_for_scripting;
|
||||
util_clob_append(v_buffer_varchar2);
|
||||
ELSE
|
||||
util_clob_append('LONG value skipped - larger then ' || c_vc2_max_size || ' characters');
|
||||
END IF;
|
||||
ELSIF v_desc_tab(i).col_type IN (c_raw, c_long_raw, c_blob, c_bfile) THEN
|
||||
util_clob_append('Binary data type skipped - currently not supported');
|
||||
ELSE
|
||||
dbms_sql.column_value(v_cursor, i, v_buffer_varchar2);
|
||||
prepare_varchar2_buffer_for_scripting;
|
||||
util_clob_append(v_buffer_varchar2);
|
||||
END IF;
|
||||
-- end column
|
||||
util_clob_append(';' || c_crlf);
|
||||
END LOOP;
|
||||
END LOOP;
|
||||
dbms_sql.close_cursor(v_cursor);
|
||||
|
||||
-- create forall insert
|
||||
if v_data_count = 0 then
|
||||
util_clob_append(' NULL; -- No data found in table :-(' || c_crlf);
|
||||
util_clob_append('END;' || c_crlf);
|
||||
util_clob_append('/' || c_crlf);
|
||||
else
|
||||
util_clob_append(' --' || c_crlf);
|
||||
util_clob_append(' FORALL i IN 1..t.count' || c_crlf);
|
||||
util_clob_append(' INSERT INTO "' || p_table_name || '" (' || c_crlf);
|
||||
FOR i IN 1..v_col_cnt LOOP
|
||||
util_clob_append(' "' || v_desc_tab(i).col_name || '"'
|
||||
|| case when i != v_col_cnt then ',' end
|
||||
|| c_crlf);
|
||||
end loop;
|
||||
util_clob_append(' ) VALUES (' || c_crlf);
|
||||
FOR i IN 1..v_col_cnt LOOP
|
||||
util_clob_append(' t(i)."' || v_desc_tab(i).col_name || '"'
|
||||
|| case when i != v_col_cnt then ',' end
|
||||
|| c_crlf);
|
||||
end loop;
|
||||
util_clob_append(' );' || c_crlf);
|
||||
util_clob_append('END;' || c_crlf);
|
||||
util_clob_append('/' || c_crlf);
|
||||
util_clob_append('' || c_crlf);
|
||||
util_clob_append('COMMIT;' || c_crlf);
|
||||
util_clob_append('' || c_crlf);
|
||||
end if;
|
||||
--dbms_lob.createtemporary(v_buffer_clob, true);
|
||||
set_session_nls_params;
|
||||
parse_query_and_describe_columns;
|
||||
create_data;
|
||||
create_footer;
|
||||
recover_session_nls_params;
|
||||
--dbms_lob.freetemporary(v_buffer_clob);
|
||||
END IF;
|
||||
END util_clob_table_to_insert;
|
||||
|
||||
@ -1749,7 +1922,8 @@ SELECT DISTINCT
|
||||
'{{BASE_PATH_APP_BACKEND}}/grants/' || p.privilege || '_on_' || p.table_name || '.sql' AS file_path
|
||||
FROM user_tab_privs p
|
||||
JOIN user_objects o ON p.table_name = o.object_name
|
||||
WHERE (#NAME_LIKE_EXPRESSIONS#)
|
||||
WHERE table_name not like 'SYS_PLSQL%'
|
||||
AND (#NAME_LIKE_EXPRESSIONS#)
|
||||
AND (#NAME_NOT_LIKE_EXPRESSIONS#)
|
||||
ORDER BY
|
||||
privilege,
|
||||
@ -1990,8 +2164,8 @@ prompt --install_web_services_generated_by_ords
|
||||
|
||||
PROCEDURE process_data IS
|
||||
TYPE obj_rec_typ IS RECORD (
|
||||
table_name VARCHAR2(256),
|
||||
pk_columns VARCHAR2(4000));
|
||||
table_name VARCHAR2(256),
|
||||
pk_columns VARCHAR2(4000));
|
||||
v_rec obj_rec_typ;
|
||||
BEGIN
|
||||
util_log_start(p_base_path_data || '/open_tables_cursor');
|
||||
@ -2030,7 +2204,7 @@ SELECT table_name,
|
||||
EXIT WHEN v_cur%notfound;
|
||||
|
||||
-- csv file
|
||||
IF lower(p_data_format) LIKE '%csv%' THEN
|
||||
IF upper(p_data_format) LIKE '%CSV%' THEN
|
||||
BEGIN
|
||||
v_file_path := p_base_path_data || '/' || v_rec.table_name || '.csv';
|
||||
util_log_start(v_file_path);
|
||||
@ -2053,11 +2227,15 @@ SELECT table_name,
|
||||
END IF;
|
||||
|
||||
-- insert script
|
||||
IF lower(p_data_format) LIKE '%insert%' THEN
|
||||
IF upper(p_data_format) LIKE '%INSERT%' THEN
|
||||
BEGIN
|
||||
v_file_path := p_base_path_data || '/' || v_rec.table_name || '.sql';
|
||||
util_log_start(v_file_path);
|
||||
util_clob_table_to_insert(p_table_name => v_rec.table_name);
|
||||
util_clob_table_to_insert(
|
||||
p_table_name => v_rec.table_name,
|
||||
p_data_scn => v_data_scn,
|
||||
p_max_rows => p_data_max_rows,
|
||||
p_insert_all_size => to_number(nvl(regexp_substr(p_data_format,'insert:(\d+)',1,1,'i',1), '10')));
|
||||
util_clob_add_to_export_files(
|
||||
p_export_files => v_export_files,
|
||||
p_name => v_file_path);
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
CREATE OR REPLACE PACKAGE PLEX AUTHID current_user IS
|
||||
c_plex_name CONSTANT VARCHAR2(30 CHAR) := 'PLEX - PL/SQL Export Utilities';
|
||||
c_plex_version CONSTANT VARCHAR2(10 CHAR) := '2.2.0';
|
||||
c_plex_version CONSTANT VARCHAR2(10 CHAR) := '2.3.0';
|
||||
c_plex_url CONSTANT VARCHAR2(40 CHAR) := 'https://github.com/ogobrecht/plex';
|
||||
c_plex_license CONSTANT VARCHAR2(10 CHAR) := 'MIT';
|
||||
c_plex_license_url CONSTANT VARCHAR2(60 CHAR) := 'https://github.com/ogobrecht/plex/blob/master/LICENSE.txt';
|
||||
@ -38,6 +38,8 @@ INSTALLATION
|
||||
|
||||
CHANGELOG
|
||||
|
||||
- 2.3.0 (2020-11-29)
|
||||
- Function BackApp: Rework table data export format INSERT - thanks to Connor McDonald for his blog post [Generating INSERT scripts that run fast!](https://connor-mcdonald.com/2019/05/17/hacking-together-faster-inserts/)
|
||||
- 2.2.0 (2020-10-25)
|
||||
- Function BackApp:
|
||||
- Fixed: #4 - plex.backapp throws "ORA-00904: DBMS_JAVA.LONGNAME: invalid identifier" in Oracle instances without a JVM
|
||||
@ -235,7 +237,7 @@ EXAMPLE ZIP FILE SQL*Plus
|
||||
-- Example Windows: certutil -decode app_100.zip.base64 app_100.zip
|
||||
-- Example Mac: base64 -D -i app_100.zip.base64 -o app_100.zip
|
||||
-- Example Linux: base64 -d app_100.zip.base64 > app_100.zip
|
||||
set verify off feedback off heading off termout off
|
||||
set verify off feedback off heading off
|
||||
set trimout on trimspool on pagesize 0 linesize 5000 long 100000000 longchunksize 32767
|
||||
whenever sqlerror exit sql.sqlcode rollback
|
||||
variable contents clob
|
||||
@ -248,9 +250,11 @@ BEGIN
|
||||
p_include_templates => true)));
|
||||
END;
|
||||
{{/}}
|
||||
set termout off
|
||||
spool "app_100.zip.base64"
|
||||
print contents
|
||||
spool off
|
||||
set termout on
|
||||
```
|
||||
**/
|
||||
|
||||
|
||||
@ -21,6 +21,9 @@ BEGIN
|
||||
END;
|
||||
/
|
||||
|
||||
prompt Delete old zip file from previous test:
|
||||
host del app_100.zip
|
||||
|
||||
set termout off
|
||||
spool "app_100.zip.base64"
|
||||
print zip
|
||||
78
test/test_types_1_table.sql
Normal file
78
test/test_types_1_table.sql
Normal file
@ -0,0 +1,78 @@
|
||||
timing start test_export
|
||||
set verify off feedback off heading off
|
||||
set trimout on trimspool on pagesize 0 linesize 5000 long 100000000 longchunksize 32767
|
||||
whenever sqlerror exit sql.sqlcode rollback
|
||||
whenever oserror continue
|
||||
variable zip clob
|
||||
|
||||
prompt
|
||||
prompt PLEX Test Export Format INSERT With Multiple Data Types (create table)
|
||||
prompt ======================================================================
|
||||
|
||||
prompt Drop existing test objects
|
||||
begin
|
||||
for i in (
|
||||
select object_type, object_name
|
||||
from user_objects
|
||||
where object_type = 'TABLE' and object_name = 'PLEX_TEST_MULTIPLE_DATATYPES'
|
||||
or object_type = 'PACKAGE' and object_name = 'PLEX_TEST_MULTIPLE_DATATYPES_API')
|
||||
loop
|
||||
execute immediate 'drop ' || i.object_type || ' ' || i.object_name;
|
||||
end loop;
|
||||
end;
|
||||
/
|
||||
|
||||
prompt Create table plex_test_multiple_datatypes
|
||||
begin
|
||||
for i in (
|
||||
select 'PLEX_TEST_MULTIPLE_DATATYPES' from dual
|
||||
minus
|
||||
select object_name from user_objects)
|
||||
loop
|
||||
execute immediate q'[
|
||||
create table plex_test_multiple_datatypes (
|
||||
ptmd_id integer generated by default on null as identity ,
|
||||
ptmd_varchar varchar2(15 char) ,
|
||||
ptmd_char char(1 char) not null ,
|
||||
ptmd_integer integer ,
|
||||
ptmd_number number ,
|
||||
ptmd_number_x_5 number(*,5) ,
|
||||
ptmd_number_20_5 number(20,5) ,
|
||||
ptmd_virtual number as (ptmd_number / ptmd_number_x_5) virtual ,
|
||||
ptmd_float float ,
|
||||
ptmd_float_size_30 float(30) ,
|
||||
ptmd_xmltype xmltype ,
|
||||
ptmd_clob clob ,
|
||||
ptmd_blob blob ,
|
||||
ptmd_date date ,
|
||||
ptmd_timestamp timestamp ,
|
||||
ptmd_timestamp_tz timestamp with time zone ,
|
||||
ptmd_timestamp_ltz timestamp with local time zone ,
|
||||
ptmd_interval_day_to_second interval day (2) to second (6) ,
|
||||
ptmd_interval_year_to_month interval year (2) to month ,
|
||||
--
|
||||
primary key (ptmd_id)
|
||||
)
|
||||
]';
|
||||
end loop;
|
||||
end;
|
||||
/
|
||||
|
||||
prompt Create table API for plex_test_multiple_datatypes
|
||||
begin
|
||||
for i in (
|
||||
select 'PLEX_TEST_MULTIPLE_DATATYPES_API' from dual
|
||||
minus
|
||||
select object_name from user_objects)
|
||||
loop
|
||||
om_tapigen.compile_api(
|
||||
p_table_name => 'PLEX_TEST_MULTIPLE_DATATYPES',
|
||||
p_enable_custom_defaults => true);
|
||||
end loop;
|
||||
end;
|
||||
/
|
||||
|
||||
timing stop
|
||||
prompt =======================================================
|
||||
prompt Done :-)
|
||||
prompt
|
||||
33
test/test_types_2_data.sql
Normal file
33
test/test_types_2_data.sql
Normal file
@ -0,0 +1,33 @@
|
||||
timing start test_export
|
||||
set verify off feedback off heading off
|
||||
set trimout on trimspool on pagesize 0 linesize 5000 long 100000000 longchunksize 32767
|
||||
whenever sqlerror exit sql.sqlcode rollback
|
||||
whenever oserror continue
|
||||
variable zip clob
|
||||
|
||||
prompt
|
||||
prompt PLEX Test Export Format INSERT With Multiple Data Types (create data)
|
||||
prompt =====================================================================
|
||||
|
||||
prompt Truncate table plex_test_multiple_datatypes
|
||||
truncate table PLEX_TEST_MULTIPLE_DATATYPES;
|
||||
|
||||
prompt Insert &1 rows into plex_test_multiple_datatypes
|
||||
declare
|
||||
l_rows_tab plex_test_multiple_datatypes_api.t_rows_tab;
|
||||
l_number_records pls_integer := &1;
|
||||
begin
|
||||
l_rows_tab := plex_test_multiple_datatypes_api.t_rows_tab();
|
||||
l_rows_tab.extend(l_number_records);
|
||||
for i in 1 .. l_number_records loop
|
||||
l_rows_tab(i) := plex_test_multiple_datatypes_api.get_a_row;
|
||||
end loop;
|
||||
plex_test_multiple_datatypes_api.create_rows(l_rows_tab);
|
||||
commit;
|
||||
end;
|
||||
/
|
||||
|
||||
timing stop
|
||||
prompt =======================================================
|
||||
prompt Done :-)
|
||||
prompt
|
||||
49
test/test_types_3_export.sql
Normal file
49
test/test_types_3_export.sql
Normal file
@ -0,0 +1,49 @@
|
||||
timing start test_export
|
||||
set verify off feedback off heading off serveroutput on
|
||||
set trimout on trimspool on pagesize 0 linesize 5000 long 100000000 longchunksize 32767
|
||||
whenever sqlerror exit sql.sqlcode rollback
|
||||
whenever oserror continue
|
||||
variable zip clob
|
||||
|
||||
prompt
|
||||
prompt PLEX Test Export Format INSERT With Multiple Data Types (export data)
|
||||
prompt =====================================================================
|
||||
|
||||
prompt Run plex.backapp (this can take some time...)
|
||||
BEGIN
|
||||
:zip := plex.to_base64(plex.to_zip(plex.backapp(
|
||||
p_app_id => null, --100,
|
||||
p_include_object_ddl => false,
|
||||
p_include_ords_modules => false,
|
||||
p_include_data => true,
|
||||
p_data_format => 'csv,insert:20',
|
||||
p_data_table_name_like => 'PLEX_TEST_MULTIPLE_DATATYPES',
|
||||
p_include_templates => true)));
|
||||
END;
|
||||
/
|
||||
|
||||
prompt Delete old zip file from previous test:
|
||||
host del app_100.zip
|
||||
|
||||
set termout off
|
||||
spool "app_100.zip.base64"
|
||||
print zip
|
||||
spool off
|
||||
set termout on
|
||||
|
||||
prompt Exract zip on host operating system:
|
||||
prompt Try Windows: certutil -decode app_100.zip.base64 app_100.zip
|
||||
host certutil -decode app_100.zip.base64 app_100.zip
|
||||
prompt Try Mac: base64 -D -i app_100.zip.base64 -o app_100.zip
|
||||
host base64 -D -i app_100.zip.base64 -o app_100.zip
|
||||
prompt Try Linux: base64 -d app_100.zip.base64 app_100.zip
|
||||
host base64 -d app_100.zip.base64 app_100.zip
|
||||
|
||||
prompt Delete base64 encoded file:
|
||||
prompt Windows, Mac, Linux: del app_100.zip.base64
|
||||
host del app_100.zip.base64
|
||||
|
||||
timing stop
|
||||
prompt =======================================================
|
||||
prompt Done :-)
|
||||
prompt
|
||||
128
test/test_types_4_import.sql
Normal file
128
test/test_types_4_import.sql
Normal file
@ -0,0 +1,128 @@
|
||||
prompt Truncate table plex_test_multiple_datatypes
|
||||
TRUNCATE TABLE plex_test_multiple_datatypes;
|
||||
|
||||
-- Script generated by PLEX version 2.3.0 - more infos here: https://github.com/ogobrecht/plex
|
||||
-- Performance Hacks by Connor McDonald: https://connor-mcdonald.com/2019/05/17/hacking-together-faster-inserts/
|
||||
-- For strange line end replacements a big thank to SQL*Plus: https://support.oracle.com/epmos/faces/DocumentDisplay?id=2377701.1 (SQL Failed With ORA-1756 In Sqlplus But Works In SQL Developer)
|
||||
prompt Insert into PLEX_TEST_MULTIPLE_DATATYPES
|
||||
timing start inserts
|
||||
set define off feedback off sqlblanklines on
|
||||
alter session set cursor_sharing = force;
|
||||
alter session set nls_numeric_characters = '.,';
|
||||
alter session set nls_date_format = 'yyyy-mm-dd hh24:mi:ss';
|
||||
alter session set nls_timestamp_format = 'yyyy-mm-dd hh24:mi:ssxff';
|
||||
alter session set nls_timestamp_tz_format = 'yyyy-mm-dd hh24:mi:ssxff tzr';
|
||||
insert all
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (1,'ZwHRUZDanXwYI','O',209066846840,325980663786,7536547.98174,301550822104853.81029,601951781402840135341350.325934786763,993636675600000000000000,'Dummy clob for API method get_a_row: VgPWDwpyRQjyAsBwKHrXpxGAdRtGcfq',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: LmUPElnmDuiBHiwlemTMlVByyIcgbfGcCDNFepiNB'),'2000-03-13 00:00:00','2020-11-29 11:54:21.408500','2020-11-29 11:54:21.408507 +00:00','2020-11-29 12:54:21.408509','+48 22:36:04.000000','+72-02')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (2,'MS','A',835250797830,120917231392,1788554.49136,906908973647463.63337,939233908431465293427184.790900028174,916853707500000000000000,'Dummy clob for API method get_a_row: TbVaBBZxOrzriryYwbWOLMERAdSBhCEerNQIpgyTpFiOybsbKuFgUdKTEobiEdbGFQAXYwslhFdJnwsLXYhCgOxwCs',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: tKaauVjmWXkMrzjqHaCebMIkksZCHIrRiWSgCoPgLhFDWHXJGRcXOAbeCzcCdaDFuCtunyWTHIhxUguqKBaWJSvl'),'1985-07-10 00:00:00','2020-11-29 11:54:21.409113','2020-11-29 11:54:21.409116 +00:00','2020-11-29 12:54:21.409118','+90 15:37:16.000000','+35-08')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (3,'ky','J',115440106973,882703374344,5575541.63695,263826782025048.35491,503855569222607526060082.179732084972,181984650300000000000000,'Dummy clob for API method get_a_row: NzeciPoowjuJiktahETxcYKRzZOwiqvlxlwpgQJfKUUFmufOswGiSjPMYsZQFkZuVryOACFrYnCOTpfsVVfBZLyWeWGmBiZfL',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: UmxlFQkIxlZvFtNFRfvXQAOFBBleXjHWAQblIFdcmzGDPscYRwGpgZZVo'),'2034-05-14 00:00:00','2020-11-29 11:54:21.409638','2020-11-29 11:54:21.409641 +00:00','2020-11-29 12:54:21.409643','+30 13:00:49.000000','+60-11')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (4,'Ah','z',841919298438,661178404491,905012.67359,593793370137460.23284,38501197611055695498562.509931404282,514578310100000000000000,'Dummy clob for API method get_a_row: prkoKlTWboZRDQJDjzbKjHDObTtpRhXjXZgFPUdrlyIgqsjLZ',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: HBcjcQLdebSqFyNGXSkmvUxjrZAnaAWBrt'),'1964-01-23 00:00:00','2020-11-29 11:54:21.410064','2020-11-29 11:54:21.410067 +00:00','2020-11-29 12:54:21.410068','+00 23:39:04.000000','+21-07')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (5,'KipzEfzafe','X',752919350811,994184281675,5193387.9926,562222667093753.79627,433320158229611236914164.354130693179,65761484890000000000000,'Dummy clob for API method get_a_row: sfosWuXxzyHRxJHkXzrWhhHxMstgbNIIOVvnwLUPUsRTKXkwCiwqWRnEYiYyIfGNUDFtUczrsJprFruOaqWyfvN',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: EUlEqbcovWMeAjnurmhbJhTyYvwnbTzYXrxKEbfngCVGbhJSdEaodgkcQirRvbNTOKpELTiXoDilPcRBA'),'1985-10-31 00:00:00','2020-11-29 11:54:21.410475','2020-11-29 11:54:21.410478 +00:00','2020-11-29 12:54:21.410480','+54 02:00:41.000000','+02-08')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (6,'pczDsHuM','K',760742902204,27340902743,8354885.56114,807683260233160.10549,346556808579295351435589.498733171902,153689337900000000000000,'Dummy clob for API method get_a_row: HPhLbODNhHTVByKdIyZiWVExtMRIQyeTEzNpHbfBOnefBJmudeM',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: UzNAbyUrMhhlHgLIapeXlDOYersXqeokxrUgyhhUJMmWTpoczQSOhbEyqFYSdJbKZBSFOsdkC'),'1965-07-24 00:00:00','2020-11-29 11:54:21.410907','2020-11-29 11:54:21.410910 +00:00','2020-11-29 12:54:21.410912','+87 02:51:04.000000','+00-06')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (7,'KmY','t',671405567871,760793239434,9461948.4389,857111810017908.12259,973929137944382994275430.643217955709,530662981200000000000000,'Dummy clob for API method get_a_row: XrebMvtxtEOCkPUazUfdvqMrFbAoHLHpvMjPwKGhrfsEQrJkRlVvNxSdTfQTHAmoRx',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: hZaHrzYiLiVbWNWjUIZSOsAjDLsWIdKlqSRbQKDHvStzgCAoPaFDJx'),'1904-10-28 00:00:00','2020-11-29 11:54:21.411322','2020-11-29 11:54:21.411325 +00:00','2020-11-29 12:54:21.411327','+70 16:22:35.000000','+00-06')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (8,'TCAnCnXaqQ','S',351739769917,899856689035,8889411.92779,3357860809542.13309,447610394976970311410438.608952714642,370532806700000000000000,'Dummy clob for API method get_a_row: apzOAncocfPbpkXdGKnuXnZUwirilyUwOkoyqchZUcPXawwbjfKwuCRWYrwlmwkrQEagNFCanDRykVvgOCfgBlSmclkdZSQl',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: pDnCyCXicufYMCmtbRniCdspKJmXSMTsVmmUxDweZLZyUYWNCQIVteWzNaZROqayhRsKFiYBdM'),'2026-04-03 00:00:00','2020-11-29 11:54:21.411746','2020-11-29 11:54:21.411770 +00:00','2020-11-29 12:54:21.411772','+45 01:17:03.000000','+24-06')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (9,'sMqqsiNMmMuXcG','R',169681776715,501167813718,1366532.77393,903608480007043.78948,289537396663661611293936.141606424591,607053575800000000000000,'Dummy clob for API method get_a_row: IumawLKObUXWGpeKObNmFIMohBEWOMePsSzJHiAizNbJfiATezZBgPRpwrxKXodTnWfOX',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: tNoovlrNHLAdXubwEoJxUfWeCmkHXDNuhSoVmXcZBxVVEzliIwUAtuJvAYwToEHpeozKREVG'),'2044-09-09 00:00:00','2020-11-29 11:54:21.412196','2020-11-29 11:54:21.412199 +00:00','2020-11-29 12:54:21.412201','+58 08:29:36.000000','+15-03')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (10,'jEHR','W',809089940452,643200242075,8302006.07003,702521552554933.5017,776286297632493657335913.65175274915,514951866500000000000000,'Dummy clob for API method get_a_row: VJRXKuTkbnUunpNMywWVpiGOLdGdVkcBARQHLnZAAXbYsYUOMPNRzgzgmXBgfwmcElBydnNyUyuhGbcX',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: TuURbimpSoqkMdFJdXVLiNgOIyGIcDfrwBwXVOuDppNzqDdcSDSJqEHctbZDmShOpnHhrzMTNjLYRKqbCZRSInTpcWb'),'1928-06-29 00:00:00','2020-11-29 11:54:21.412625','2020-11-29 11:54:21.412628 +00:00','2020-11-29 12:54:21.412629','+64 12:20:35.000000','+54-05')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (11,'iDqvfnehHP','D',913565414064,9693727896,8345367.18474,426971117781507.06127,896258367289772658336955.705863950301,110475275500000000000000,'Dummy clob for API method get_a_row: xmFWIeUtVsXpbPjKkEqvSqXpvYhrMCAvcLPPyVfciboAnVhWhFtUezLsLmNU',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: VpxEnEZlPmTgfwFLELcdbLqCLonydjfqVZmPtaZkTpNkqZqEWVoOYLjhelCRoFclMFvYXewYAq'),'1954-02-02 00:00:00','2020-11-29 11:54:21.413025','2020-11-29 11:54:21.413027 +00:00','2020-11-29 12:54:21.413029','+33 16:37:08.000000','+66-02')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (12,'MCvOYzLog','g',32460321811,417510652713,6168355.36762,892887350349769.92927,189926424104392650740244.53782778208,169625461600000000000000,'Dummy clob for API method get_a_row: GDomORkFgSNZKyMZWKtFfXYpYwwcXDiYI',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: nlwZYQZkFBKAdKySIfpYrfAkPmUTdoBALGYlpvuyHqXCzXOEIMbaDITCXQtCFakQHjlSGtQPWNarC'),'1959-02-25 00:00:00','2020-11-29 11:54:21.413403','2020-11-29 11:54:21.413406 +00:00','2020-11-29 12:54:21.413408','+77 11:57:55.000000','+87-07')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (13,'VDjWSouWfPOaJV','R',609408992159,370468331399,5959306.61321,491778384711485.22993,41759496464551720199963.43640321728,336368005100000000000000,'Dummy clob for API method get_a_row: TPtciijqLxbwxPaTPeuKyYYYSFNHyJutvXZFdhKGEeUwaOosIztDxV',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: mUHjhsekHUABbwlaUIOGYnMQbEHKvflgQeImWLvOZfVXWAOMRNAbliHOYOucXPQXzJnxHgotojevnbdsRImhNsu'),'2057-02-02 00:00:00','2020-11-29 11:54:21.413819','2020-11-29 11:54:21.413823 +00:00','2020-11-29 12:54:21.413825','+86 01:17:51.000000','+51-03')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (14,'YpIVehDGFwf','Z',185834577916,695048978839,1371267.02012,818047794725456.34365,442312480322393538600807.35663898491,639948863500000000000000,'Dummy clob for API method get_a_row: fwtoTGFKrQHkMrIxcURQZjfEMmuIIiESGALwHkabpkTkqZznheqCJPtsjoxcoJdyQShUcjZRFlAPJfsuRlLRxx',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: qoIYwtEaGDAESJZFnQrSSulmAaIumGooFbFQWnzXImFhS'),'1917-05-05 00:00:00','2020-11-29 11:54:21.414201','2020-11-29 11:54:21.414204 +00:00','2020-11-29 12:54:21.414206','+94 15:38:32.000000','+57-08')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (15,'jxrPRSiAsOLeG','o',935708812290,480915739962,5656935.12682,928122176545264.55751,46762129793374101262211.199574661982,928406299600000000000000,'Dummy clob for API method get_a_row: fZnxdtSREttyLwXQZolSvgQVsNsJjdY',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: IgORHxMFSNbanQkZWlAvzkWYngGMXrrNaIPSujVsBMtixBvPztEjNvyvMUdeoDSsV'),'2062-12-13 00:00:00','2020-11-29 11:54:21.414598','2020-11-29 11:54:21.414601 +00:00','2020-11-29 12:54:21.414603','+86 15:00:07.000000','+34-05')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (16,'uexlRnnaKvlmpIn','t',941343738459,676771442908,7529492.04635,759627124787845.05665,695642371106682556426818.964396592308,433186293600000000000000,'Dummy clob for API method get_a_row: eakPtclzbraISMKgOPUmdglBOgyWcbtrMTCYCAaUSFFCCbTHROnKbgutGjlVEernLdgVNlBhVaogHFJfumhDIolSDnu',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: fSIeimXQMVpmocrilEZBWSZMSdGORabtDJLDMLw'),'1977-12-22 00:00:00','2020-11-29 11:54:21.415001','2020-11-29 11:54:21.415003 +00:00','2020-11-29 12:54:21.415005','+50 22:20:40.000000','+28-05')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (17,'usLTZGTTyvP','z',254774834862,982243327459,1857278.89602,300982546889319.3048,594227982666800577516988.897511757402,2027018068000000000000,'Dummy clob for API method get_a_row: GcXvCayAgoPaUgrgRCvSpVJEClaCBipJ',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: kAtFxUGKQIjRTOWKtbrXVFIOxyEInJLYQTaeMmcTDBHoXbMeBuZEuSsizxOldRjhcJvfAye'),'2091-07-07 00:00:00','2020-11-29 11:54:21.415385','2020-11-29 11:54:21.415388 +00:00','2020-11-29 12:54:21.415390','+56 23:13:51.000000','+63-04')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (18,'zsdMibEHPRoPq','L',22642320384,615536957505,2193345.37356,61103330174190.87253,381188769893496230842859.147088358192,461653870500000000000000,'Dummy clob for API method get_a_row: pkdULfEnOuRfMdDyQVurhczieXsNxCliANQlhCNXJHIwzKSMlHagkNNTHWhJiqWOHhRtfRW',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: cCogmSvPeSthPzCIjxvQsjmRpaqfbpmNKONXfIimparypYXrfMKYAIrSdeMOHicph'),'1925-08-16 00:00:00','2020-11-29 11:54:21.415800','2020-11-29 11:54:21.415803 +00:00','2020-11-29 12:54:21.415805','+09 21:09:42.000000','+90-05')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (19,'mOiIJIUm','D',542925884011,953436543107,5818795.41703,613279266168062.69564,763646593637652529039207.85349030234,873208703000000000000000,'Dummy clob for API method get_a_row: GqNJignbuaKCEabUrbgzVSaERduTVkdZTnhUGxMKEdGdQEMvvmxiEBBYUIcDQQANNsWLYofvEndlWmzNQsCalfxnwJXXONYSV',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: opsrrAZbUboBlkBedCwyBKBuinCDOaPSaPerOqUXBahjYxoBZLMZcXWWcvvFbptvqTtA'),'2003-11-27 00:00:00','2020-11-29 11:54:21.416247','2020-11-29 11:54:21.416250 +00:00','2020-11-29 12:54:21.416252','+40 01:35:33.000000','+57-07')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (20,'HqvIyOdq','m',793067201726,70855705010,1973634.36364,495890194301804.17138,936543889268701678345692.549304019559,796004891100000000000000,'Dummy clob for API method get_a_row: PSBWjfDeUriDNfnQKVrfbreliVCkFwKumzOxmAwNeycThyUkODFklYcxoDGocNZHqxBAgkeoTUzIpzWxZIUqUms',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: CVmOOWVUweTNiyYiYFtbXyuOLbfxASjsSnOuGAIQyTWXyvfxNOSslnqOwRMOoFMPRiH'),'2056-08-14 00:00:00','2020-11-29 11:54:21.416659','2020-11-29 11:54:21.416662 +00:00','2020-11-29 12:54:21.416663','+98 15:58:25.000000','+46-03')
|
||||
select * from dual;
|
||||
insert all
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (21,'VuaMZpxpmFZHPFb','v',107436852670,410727105100,5993302.02707,311162594112623.28346,35068599411800706200298.421517166237,580638855900000000000000,'Dummy clob for API method get_a_row: kpJnLvwCfIGLYdgDTjyHfFTNHPhtnbYpsnalpIVDOnWttjWmLtJAidCrFqgyWVrYwhxNmBHhWVAYpqATJqtVE',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: hyeHkLdMbLUUGfldUiPKYXUCLPhaUawYWboiZQOisrpHDaTUCYAStZdsNMiFmalxmJC'),'2022-11-15 00:00:00','2020-11-29 11:54:21.417091','2020-11-29 11:54:21.417094 +00:00','2020-11-29 12:54:21.417096','+91 00:14:15.000000','+51-01')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (22,'cyoXNo','t',274974060496,371247824,5062623.72999,339206078485424.08943,690637344405241707984294.559812911513,772622245500000000000000,'Dummy clob for API method get_a_row: ielbZaEZWXRhGwTvQazcbTKezodDHzIfiNAtgurXMXuiUEeOiwTeiQLhTPegZMFFlSamrKScyt',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: vYoshlxipPTNCdfZGHwcxpUULPxrgqdaGEDPFMNVpfSH'),'1957-08-08 00:00:00','2020-11-29 11:54:21.417473','2020-11-29 11:54:21.417475 +00:00','2020-11-29 12:54:21.417477','+94 00:51:57.000000','+14-10')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (23,'oOfGolkO','b',170071509442,922036039667,3904395.43021,444283643971608.2544,554998784739715402264912.847522903955,140796395200000000000000,'Dummy clob for API method get_a_row: taheFFAwKFBIfVmnwfBTDBbVZDNCBjZwVcBLBoyILV',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: skKAFAPVHkgfTeuhGoZtghCThKkwIBzMoLbbaTiKlPEQzWiSqOrptYRavuxNCOiwwIGuxdrsEeJgEklXYclBaRmkGZochRHiYL'),'1940-11-24 00:00:00','2020-11-29 11:54:21.417896','2020-11-29 11:54:21.417898 +00:00','2020-11-29 12:54:21.417900','+94 00:30:12.000000','+89-10')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (24,'V','J',69004276045,963832569483,3908074.40619,441180000851255.47522,674821751153035954442701.133853142107,278757577100000000000000,'Dummy clob for API method get_a_row: GBkiqByFBDVBrdyQROrZRwCJVcLxHeWE',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: EiGnyvPPWHcJoNtHYLdgyLbevgxgVJGIEIec'),'2075-12-23 00:00:00','2020-11-29 11:54:21.418256','2020-11-29 11:54:21.418258 +00:00','2020-11-29 12:54:21.418260','+60 15:42:58.000000','+03-06')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (25,'PDdBXbocigi','P',88589868949,384026072828,3807180.60036,103938296124233.30513,418040587100959686466266.017783743599,464816451000000000000000,'Dummy clob for API method get_a_row: WsaEEorAAbCcrDbTuLmEpPvACJYJHyqNpLSYMidXWNJlfiBbFRIblNlZBzOMniNpmUBElFrRZvqVxwcI',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: gktLcnqKgkzQrNJiKpQnsteNywiJNicfzGzKBgxBmDCwEaHGgmkoVnofhcVpVSqfry'),'2004-02-18 00:00:00','2020-11-29 11:54:21.418668','2020-11-29 11:54:21.418670 +00:00','2020-11-29 12:54:21.418672','+85 20:08:40.000000','+93-10')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (26,'jxTmTf','T',956799201708,680018050291,4156600.22778,318577248674588.04807,222544536291665346212205.499279162342,621816108000000000000000,'Dummy clob for API method get_a_row: DiCxmHYHDGAcblHcRBcndizapfQPxDlzMpXzqOzFbFgTNNFmCVU',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: lepsOSNkLKHPvYcSAGhsGJGrvEMrBljjhbsaHkkBZGUXdIlOTnfJebLgj'),'1908-06-04 00:00:00','2020-11-29 11:54:21.419066','2020-11-29 11:54:21.419068 +00:00','2020-11-29 12:54:21.419070','+70 07:04:55.000000','+37-10')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (27,'zqDIMUZMCPk','s',108347506673,294406273213,8469094.11356,847565176939108.51186,21504496885901984811756.92889391221,612634381300000000000000,'Dummy clob for API method get_a_row: tvhnucgMMsXOlcYmFYhrpclVXyDlPjSKrJhgYxDvDlqSrOCUIzFgyYTQulZKMzWECFuKZchIKXKgqnpfyIROIlbmuGqkwazFrk',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: QqkdTXPMpMJwtuqZUlxqxLluWChOBHmxgYTyVYeDUvXgpxPFiXqCCVXnsRsVfBKVkdvO'),'1971-12-25 00:00:00','2020-11-29 11:54:21.419481','2020-11-29 11:54:21.419484 +00:00','2020-11-29 12:54:21.419486','+40 13:48:37.000000','+41-05')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (28,'JBAEaXREdJk','q',233683365099,384692752295,121577.68063,504805370371317.25949,777621436429504449317274.157539061254,498787242400000000000000,'Dummy clob for API method get_a_row: TkGRAgcrfVtJliVgNiKBcwqUiejoRSMmZPrJsXmGKJZesYcTXcvEqmoBP',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: FRzodFklSeGHnYsjfVUSnFHftHEAnoEwbsLQLvusJyfPsPMbZKFcHWUzZEpRtphuWRXyUmbpTAifVTGTSKcvKZ'),'2084-07-07 00:00:00','2020-11-29 11:54:21.419896','2020-11-29 11:54:21.419898 +00:00','2020-11-29 12:54:21.419900','+01 22:01:38.000000','+10-08')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (29,'mgQDOMCnR','L',762082645034,152461950244,5616452.99032,795305143768889.43019,523180798152648141558606.072717915308,347211532500000000000000,'Dummy clob for API method get_a_row: RyTfTJgamwJxczLqEJVOumLAPkzDFfcYTOCnXwlbFUnVhwQBJ',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: bTHqPhiTjYpJyGKMkAvxSJeIjcjbCZybXMWrFCimLMFjhQhXW'),'2014-01-05 00:00:00','2020-11-29 11:54:21.420274','2020-11-29 11:54:21.420277 +00:00','2020-11-29 12:54:21.420279','+88 15:13:46.000000','+44-02')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (30,'rSRGhuHlMBEItz','N',34912200999,641228180358,112608.18363,497815979690733.11973,235889727862359739000277.134492450284,632756531400000000000000,'Dummy clob for API method get_a_row: pBKQsWstmJVqjsAplFuyOZDVZSngmKUmbREifZNVowaUtEGnbXcickvOUywfgNfNb',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: ZOSOKaCUSHeJJApQPPuPAvQBNLmtjPWziMTQOeruqHtEOJOMuacgJramZFHuqZUA'),'1976-10-08 00:00:00','2020-11-29 11:54:21.420661','2020-11-29 11:54:21.420663 +00:00','2020-11-29 12:54:21.420665','+95 12:26:35.000000','+63-02')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (31,'WnU','E',580176050290,255945463461,1596613.35592,733716904699680.12097,301188469682106163512179.018193450718,497342327700000000000000,'Dummy clob for API method get_a_row: hjcHMJLEMAifhMSWGYQAEChVMrahIhULogiwotxiumpFfnjobJZLrKttbDpUrgQ',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: gRcWGQFALFGkqQJnAAtzsOFQkYQgaOka'),'1915-08-15 00:00:00','2020-11-29 11:54:21.421184','2020-11-29 11:54:21.421188 +00:00','2020-11-29 12:54:21.421190','+33 13:44:04.000000','+76-09')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (32,'OgvhaDhcDiUj','V',342849008827,325093294230,8045415.16161,866139165969813.27659,46456857634516601562031.772630914745,635084492000000000000000,'Dummy clob for API method get_a_row: kXemShsMwqowVwUkLTcJDNUmtffKAgFucaQkjGDPzWKMYCBoVXRNLoieDJxTOxHYRFhFDYAKpmVcPVaODwXMVnZfkNDxEKo',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: brRbbCzKKmpbKItGGVfjkgECTlCHjpbQemDqXZZNjMnfvSmrjjhpr'),'2075-07-15 00:00:00','2020-11-29 11:54:21.421613','2020-11-29 11:54:21.421616 +00:00','2020-11-29 12:54:21.421618','+37 20:33:23.000000','+67-02')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (33,'baoZsSiiSUpiT','g',986688902162,835019045427,8848240.12301,40917194612409.94436,401278097741023290399907.032111018194,700542578800000000000000,'Dummy clob for API method get_a_row: TnYzpYobHYBJAtDxWaySpjCexhifyVJxTdcQF',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: KwoXwzwxcPaqQuWJjRVHentyYbBeaFJNuKyuSlhfuXXzZUftOpkG'),'1917-05-04 00:00:00','2020-11-29 11:54:21.422069','2020-11-29 11:54:21.422072 +00:00','2020-11-29 12:54:21.422074','+98 06:40:27.000000','+79-00')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (34,'FFLWaYk','g',75647789814,795735736765,5819451.66179,792696005788184.21856,862673322725168283585108.791561932196,139755369600000000000000,'Dummy clob for API method get_a_row: nBKdHoaYBIXwrzlBqKhtOqyewrcdSGcnSjUArvUKrdVLWpjiVtRULnGjtnHZvDLUrrwi',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: GLinCFkfhNRluydtiWMWcamygfiUSuRvvRIwWFrUTBfhFDplihNUXVtmrRIUzCaceahQDVOCYsEheckOMwopQKhmiRQWH'),'1968-07-11 00:00:00','2020-11-29 11:54:21.422476','2020-11-29 11:54:21.422478 +00:00','2020-11-29 12:54:21.422480','+95 22:32:15.000000','+96-02')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (35,'EnGZSCBx','A',78049688811,266651843854,9446408.88831,184198426529251.07074,303533065788592622276958.280804982368,249580647000000000000000,'Dummy clob for API method get_a_row: VsEfDUqdnAdCpFIGYYeMZKURnJOyMaRkjussCgZCaPWPSTakIxYrxbwJCTdPvINXuWvsmiIy',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: AcrdvBwHnpJBOumNWIypnaUmRIEBjiwyBibWxFKGTZxWHKItDqbViTZSkwffjtGoYlYLzwUphvLvkdfUzgXS'),'1906-10-10 00:00:00','2020-11-29 11:54:21.422890','2020-11-29 11:54:21.422893 +00:00','2020-11-29 12:54:21.422894','+43 08:43:35.000000','+12-00')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (36,'zQvrKWiHHd','k',743578288568,761658693254,3283167.90902,367381408247321.86562,939176682114803411587910.164965537545,103203734900000000000000,'Dummy clob for API method get_a_row: vwsDAkCHPTHBYlVWhtXUCeWEybMxAgmoY',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: OALNWQHkvnFfihYFKDmSHuYEAAQovnJVCjyrmoeTHHJEmXgXAnytiwuPAbBREQGyXEWUVDYSLwXtRFcAnPiekE'),'2041-12-25 00:00:00','2020-11-29 11:54:21.423358','2020-11-29 11:54:21.423361 +00:00','2020-11-29 12:54:21.423363','+05 05:00:11.000000','+82-01')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (37,'RfMgZIaFpLj','n',2821465189,38865654596,4378703.92902,308197966208540.30422,764484258416713721730649.965660202804,817671849400000000000000,'Dummy clob for API method get_a_row: WzPdBepfHVTJzFydjeDAXCEazTuXujPwaLVsPeQzVjRL',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: oNUkKGSmLkWSKBvNEchgpCOkPcENVMRrSvkdBpguzStVWocjsgBYUaeDqZyfSjddfGwLrbHEubCLqqUHJGlpmwuIUiJU'),'1998-04-07 00:00:00','2020-11-29 11:54:21.423795','2020-11-29 11:54:21.423798 +00:00','2020-11-29 12:54:21.423800','+19 10:36:29.000000','+80-07')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (38,'PjonI','k',207567762603,322566905706,9781633.57482,219553468704805.31565,8031973684638133664919.909327856533,620343781600000000000000,'Dummy clob for API method get_a_row: uCNbrYAhfMDiVfSzWCpqmkMZgoKKnlnCcrWtfkmBhrzDrPDerWtdhs',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: aqYlfKokIEacAPEBDtptdzPEXLEnVdfdTPIZpYWJlSbDHUEikLnHhHvxBcZBnTNbTiBqobKpLQxlTTnIXsvClbbU'),'2071-10-07 00:00:00','2020-11-29 11:54:21.424208','2020-11-29 11:54:21.424211 +00:00','2020-11-29 12:54:21.424212','+63 12:34:50.000000','+70-08')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (39,'Ac','v',921850361116,284237455306,4598097.09639,935664731463471.90254,550237047542676389945057.321523614296,700168702700000000000000,'Dummy clob for API method get_a_row: KlpswVshLlwulflUhkoDYYuBXaJKOGlbsMLixEJJrGSeI',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: qmzHadQLNhMzCKcdIDxIcjkveYrGhhXlnWiknfSyJELOsZiSNoOvNtuVKqOIKowAEujppucSIJWVISNsNGCvaRGyNwsxTPzNzvE'),'2034-03-20 00:00:00','2020-11-29 11:54:21.424625','2020-11-29 11:54:21.424628 +00:00','2020-11-29 12:54:21.424629','+38 05:42:25.000000','+96-08')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (40,'WLINYw','D',695623881047,111234949856,640158.40412,997243173116576.8395,344653748934207095457061.29273085822,822604302500000000000000,'Dummy clob for API method get_a_row: EpQbgvJzwRDEqWHtxLaHNbaieTGGWTBtZmxLTgbzqYnTxSqbdXOe',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: SyjJWhCOKsVDBQJDjsnjNaLuRJIrUkNlAciIfOhrTUtZDcBBiONlppljHrArSQALVEMgfrvCMhJRDMwAXWdKayVI'),'1978-10-10 00:00:00','2020-11-29 11:54:21.425069','2020-11-29 11:54:21.425072 +00:00','2020-11-29 12:54:21.425074','+68 00:56:35.000000','+65-01')
|
||||
select * from dual;
|
||||
insert all
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (41,'ZGGiTwEvvWDt','h',690504023653,609125871445,2680442.38084,574043400166561.11977,41830902397548873662388.785478638931,848289451300000000000000,'Dummy clob for API method get_a_row: KFUvaIYBPTEcWWzGztQEydCfkUoPknpYIKpdgCO',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: DxVRThqlxgQhJBmvaJLKwNZYduFCYOqDrlVRLsQiBFxupbTjUBocPoHhraTsvgopRlyVuCebPJFlot'),'1930-04-19 00:00:00','2020-11-29 11:54:21.425469','2020-11-29 11:54:21.425472 +00:00','2020-11-29 12:54:21.425473','+96 21:52:36.000000','+78-01')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (42,'kiLpJHYFYTrwPj','x',209337691057,684917261626,2094303.29357,877009557186654.16541,273383621110214365990129.275798127919,88927788910000000000000,'Dummy clob for API method get_a_row: XFrYYWBcRJweRniRpvUqGiDZYZzxPZbGdQHlRJWrsoULwxQ',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: SHpyHNmweqVnwdiuZDQiwEJhkoCDgUxrgovWnOCHHcZOmFlRskutCaECwsBni'),'2038-12-20 00:00:00','2020-11-29 11:54:21.425898','2020-11-29 11:54:21.425901 +00:00','2020-11-29 12:54:21.425903','+75 05:36:19.000000','+20-08')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (43,'lBggpwjJvzdZw','i',905696983958,37035120577,8776194.02919,552922580370531.54506,637053958731641460440395.905003601825,936887010000000000000000,'Dummy clob for API method get_a_row: nauQFZyVvhzkWHAHEEVQIRzAlsKEBhVbZQurGmiJCFbwbTiezkQrPBzYTEUHGTxUxtcctjRHKxNkliekdbvQjUAsVOyNFgdzzEZV',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: zlJidbBjeJwgPXqoyNTIbpyPuGJBnFohQu'),'1943-11-24 00:00:00','2020-11-29 11:54:21.426318','2020-11-29 11:54:21.426321 +00:00','2020-11-29 12:54:21.426323','+10 10:20:22.000000','+98-02')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (44,'BeWDtfrSHfOT','u',852825616198,376616636560,6805119.38408,325460685829870.58255,623060066118514162677802.117839212208,797602677300000000000000,'Dummy clob for API method get_a_row: DSCHowtiXAHCKFajgMMKJlUIazLoIDexhAtFIGPLuuxoMnwMexabrQCeROvxAYgEBBITLquaHJyWYQVExmQzUhbyOpCI',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: vQwvFHYdrnlHZyPhYiPAMwUFIDQqKbqmLWDPGuCHJqFLOOBFKOOBzdkDTMmQjPPCKpXftRph'),'1998-12-24 00:00:00','2020-11-29 11:54:21.426740','2020-11-29 11:54:21.426742 +00:00','2020-11-29 12:54:21.426744','+39 05:31:13.000000','+41-02')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (45,'ResJEb','f',672706141957,805497025746,6185856.08363,793004108091196.15663,199909632617517763487066.43683720343,338451939600000000000000,'Dummy clob for API method get_a_row: WNQZVGdBXrMKfMLQpnqfeMCKtamwBurNSyT',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: KyEGqNQcQuIBltgjhWOPnDWWBVOqpg'),'1942-12-07 00:00:00','2020-11-29 11:54:21.427130','2020-11-29 11:54:21.427133 +00:00','2020-11-29 12:54:21.427135','+80 05:18:26.000000','+62-00')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (46,'IuG','M',590716106765,396707670156,3636739.09098,612218547484712.18846,669383057493053712779403.864553576008,335181088500000000000000,'Dummy clob for API method get_a_row: TNvibVQpuRVHJWygXPYrbduJtYPJTGsyvhjPzEWVMdeLbRIOLPNIfZsNlKsubInpzFXJaVCjtCDD',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: CYFocSyfkLhsbKbMKLLjBUCnKyESQMacRSanKtHtzWshikngNvcDYFiNWKGteZHBeHfmEiFJiDQjFpTYthVoRIpodggoSO'),'2080-11-21 00:00:00','2020-11-29 11:54:21.427543','2020-11-29 11:54:21.427545 +00:00','2020-11-29 12:54:21.427547','+57 13:27:22.000000','+73-04')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (47,'qvysndvBlQrci','i',939661995221,806037945469,1460277.93949,767916427940944.65056,242807758446965834857649.638194630182,517967716900000000000000,'Dummy clob for API method get_a_row: pcnbSCTUsWfMmvPvtjfNPMGgZfCmnGorHyhbUFVCPDHOsrHRsQmtYkLOHqOGIHLzVMoGAkxJ',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: mcHDNyRvpfMqzFOovhdMgCkQvVtbEaeCPBcxJgDftSzHROKIWjNRztChyBeRYwyEhooJmSUpAcUyQuYREG'),'2074-03-13 00:00:00','2020-11-29 11:54:21.428010','2020-11-29 11:54:21.428013 +00:00','2020-11-29 12:54:21.428015','+08 09:38:41.000000','+26-01')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (48,'Pid','k',521942948220,127132020445,7699708.78427,331363478268106.01496,77912650408414790792969.027776030706,640507861900000000000000,'Dummy clob for API method get_a_row: uapUXHGbIIvWAHjQuJbjWFVkIMcfuEkFchdqJpollPoPVgDOGJaasoTCnRzRLrglpYNKxYCgYQysm',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: zOWCFnsEHPydIVhVWbnCZTFGueaYSfNSRJUFFEwoAoCVffuZHMSYLrfutwbYSGXY'),'1999-03-04 00:00:00','2020-11-29 11:54:21.428439','2020-11-29 11:54:21.428442 +00:00','2020-11-29 12:54:21.428444','+37 15:16:29.000000','+57-02')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (49,'PqXFyzf','r',872015553519,938017308355,5781788.59331,441245768574462.06413,873206863330695667103981.741432751717,245502309100000000000000,'Dummy clob for API method get_a_row: dZtkZnNEIuxUfNLCwHXwVqFcvvdynQuoVda',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: pDEsddjrzwzUFvYcAMfYUXiNEIteYXSVRQvalHoUmFwBqCandaNqBILuMyXBBBMQMvuqCMxnScaLZJBijGUZgdPdOScmIAlzB'),'2066-12-11 00:00:00','2020-11-29 11:54:21.428856','2020-11-29 11:54:21.428859 +00:00','2020-11-29 12:54:21.428861','+84 20:17:28.000000','+51-10')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (50,'nB','S',239465758487,562766699282,9107040.06735,91349831715036.59587,833943220928311635826282.87576840664,526114942600000000000000,'Dummy clob for API method get_a_row: OyeBGRWfBKzyVnpTESUayFtNeoeDqxnqeAXZMuFzKqMiWXHMiJPtOsntmIExPKVfKW',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: hiuTOIhIVcBZNxuxFqbkRJbWcFbfUMkPESbarqYPruNHkCBDGlFxTyuJnWyiVR'),'1992-12-23 00:00:00','2020-11-29 11:54:21.429280','2020-11-29 11:54:21.429283 +00:00','2020-11-29 12:54:21.429284','+49 21:32:00.000000','+10-09')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (51,'MxkorB','d',502995667790,667120399850,8162138.60718,642580453196477.31258,548491493363320855819410.813217558587,770364120700000000000000,'Dummy clob for API method get_a_row: hraZQfbTnASWsAfuGuHXYXfWkPlycCZMUvSuiCqUxPocCpNDJIHgZkwRHLYshAgHw',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: QbDWPDKvzbMtatYseBnVebHqmQCWctAEEGLcHTDHHldWKfEDuUWKjDbDsFsrxKzDhYVhMbzmnQspHMu'),'2027-06-22 00:00:00','2020-11-29 11:54:21.429690','2020-11-29 11:54:21.429693 +00:00','2020-11-29 12:54:21.429695','+71 11:38:14.000000','+94-06')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (52,'wLE','E',578588320868,70913282198,2162309.80214,799981252156474.15522,192391044233482006088810.596417120637,986261085800000000000000,'Dummy clob for API method get_a_row: ogDNxsZqeXzQLLjmoqOnPRfBMMFgFzATGGIkAakHMmHrWLkEobBfBuZAtJtCr',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: JleHBLlTuBcWemdPGAnHLGtZTzPBnrBusrtICIfeGRygReJfBhQFJlAdluJoDmOmsW'),'2020-01-08 00:00:00','2020-11-29 11:54:21.430128','2020-11-29 11:54:21.430131 +00:00','2020-11-29 12:54:21.430133','+62 21:10:52.000000','+25-04')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (53,'ndlCFUggGwc','Y',570565426862,726460972895,566692.16006,942179680327574.92427,115557302854323520372836.453153432052,910786687700000000000000,'Dummy clob for API method get_a_row: NTDMiqOMJMJNZYLigptVFPYcXFvrCFRhMIyzCUpGJSZQRWHGXkLZkYUlYyDlvgtWVHNbtBpqHSmXlgivpGQndmTkHC',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: xBjdeamsKXxxfCxwWEDgOFUYYSMHcKyZukSVhEehJegasEMJipzzMXJWUwkHkkSEHQSNHcdfijHHJhiH'),'1933-11-04 00:00:00','2020-11-29 11:54:21.430590','2020-11-29 11:54:21.430592 +00:00','2020-11-29 12:54:21.430594','+24 03:46:39.000000','+15-10')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (54,'gDcSo','l',320788343262,890751924465,9727566.526,778316629864265.49594,6100945035267938383060.198417958605,640751455700000000000000,'Dummy clob for API method get_a_row: qYaYOQdCSyfqZBPhbMmauZmljUSMEaWBBefTJTNvMyIDojiSoDesCwFa',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: skTqAETdKKiUcdnLveiJVEYYwFHWcbuXQnzTRPpITmJMLGzzIbLRKySpqaNcfOAayiousdTPQrWgLYYFgTomaMNGNNv'),'2090-10-15 00:00:00','2020-11-29 11:54:21.431064','2020-11-29 11:54:21.431067 +00:00','2020-11-29 12:54:21.431069','+56 19:40:21.000000','+41-10')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (55,'DkT','Z',372497428928,656080397128,9713070.23265,429617438366346.57441,435384708365855092047563.897343220597,816951085500000000000000,'Dummy clob for API method get_a_row: yfdvAZrKPgotRdPPgHLANMDLWTfCKwvLjAXKYFvFpAPsowxgKRkUvdmVyJxKWmVyhLD',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: jKUVIbsCIAsgkPWGZighJUVvsQDWMTiXHRCStcXEefCjYTRvUCfqgZlbbYrVubaQSuzdstKENiQiomrNSjNtsTz'),'2032-02-12 00:00:00','2020-11-29 11:54:21.431518','2020-11-29 11:54:21.431521 +00:00','2020-11-29 12:54:21.431522','+80 20:46:45.000000','+08-10')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (56,'xZBNRNb','i',712857805675,928776430770,4906298.81118,414819328416169.45622,228797847540223602234912.092486387649,544236794100000000000000,'Dummy clob for API method get_a_row: akqiRqluLAgWKSFHVuhoevLBXsERVGnBqdZJmAsSAFeZZaAmUnARZbbxcuznxZvB',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: FfxSyZVAMNDWLorfEiviOzSYZxjZnTeLKWsYZIUzOUwnPpIzijfouUBechsltALWjvulwL'),'2018-07-25 00:00:00','2020-11-29 11:54:21.431972','2020-11-29 11:54:21.431975 +00:00','2020-11-29 12:54:21.431977','+37 01:50:24.000000','+57-09')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (57,'XHgPNing','n',66137138957,702245725829,2055514.82723,372848575264593.92959,159486392284683490919144.881982958724,612601855700000000000000,'Dummy clob for API method get_a_row: snkEJuHYJPfQLmlQmcGnWkFtYfDOfXFiBayRJnpsVGMLdQQaJlY',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: hjIRSnTpRMGLpdhVabJHjTyzBWUiQbhMHOzUNRGbAwEKkugDrZitEXS'),'2031-06-04 00:00:00','2020-11-29 11:54:21.432376','2020-11-29 11:54:21.432379 +00:00','2020-11-29 12:54:21.432380','+12 13:59:40.000000','+28-00')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (58,'Z','G',626774838284,59671468558,9047292.59455,763432866443516.62458,938822666586467614486794.708290907413,511576156900000000000000,'Dummy clob for API method get_a_row: DomBVVPWaIpUEntJWttdbfqmgMNLCimiPqOWRCogtUizkukVZsZkMyWjAzMYECFqyErWphqPNbdLaaH',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: EmvPgJSQqbvWEuXsYZVZcaknTDvnYeqFmHnlMYG'),'2058-03-18 00:00:00','2020-11-29 11:54:21.432799','2020-11-29 11:54:21.432802 +00:00','2020-11-29 12:54:21.432803','+59 17:50:52.000000','+54-03')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (59,'mAz','D',9823596851,856651822498,8800562.86538,467324335430037.72808,808360270203118952576750.205485260587,823790764100000000000000,'Dummy clob for API method get_a_row: SOVzKurpqMNEHolTtsXseLtyFhZxRAGzSgOezfiRhQlxNIEWVWjULabXvuxbvypItbjH',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: TlaIJqrUxVbDIScaiXObLGueXaasVFhcpwefaMfXwyzDQEVhMXUnqCyqL'),'1900-06-23 00:00:00','2020-11-29 11:54:21.433184','2020-11-29 11:54:21.433186 +00:00','2020-11-29 12:54:21.433188','+01 13:55:28.000000','+92-08')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (60,'FjjeIy','W',264044779396,595331905443,5423050.55774,221310916928097.66971,322404873774808189652338.841118748693,230241643700000000000000,'Dummy clob for API method get_a_row: hQnaDjtpobCfwIuFvrfGbDWNXJiXMeaPKineamyfnB',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: nzqiiSXRZfcWEaVyQNUFzKqKXvtlisltbuEwqh'),'2097-01-21 00:00:00','2020-11-29 11:54:21.433576','2020-11-29 11:54:21.433579 +00:00','2020-11-29 12:54:21.433581','+93 20:07:56.000000','+38-08')
|
||||
select * from dual;
|
||||
insert all
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (61,'mv','H',64702323819,596566710124,9534392.8758,846293995322209.38584,303038095469049448791177.487839367363,210676529500000000000000,'Dummy clob for API method get_a_row: xKsCafPGQtyefpZEPoBhqsOOssBDPxAeyXpkpihoZqjCRuPYAxjPOlHpDuGqdPkOQnPUYHtpfkjHndmsqlSejHTCRva',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: ySDqeyWpCINfiTWCPthufZUMXEQijpnWaxgJjGxqmAXZEphyBBwwUuf'),'1982-10-16 00:00:00','2020-11-29 11:54:21.434028','2020-11-29 11:54:21.434031 +00:00','2020-11-29 12:54:21.434032','+45 09:28:16.000000','+77-02')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (62,'cGuo','Z',382361264771,871595014417,395332.81005,879168794881954.29528,90972176220530714402912.569658129484,372834850300000000000000,'Dummy clob for API method get_a_row: mvjWavIYENpKQGGoqBXKBpkrFLjpujLPICiDHwGPzQJawEhEunFaYEdsHTMVfToNQXNXCMDqRgkxtRvAyo',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: SopHPWvYmPucQnXxzRlvMTpYRWZtFHcnTIwdmSmKSHgHFDiwLDr'),'1947-12-03 00:00:00','2020-11-29 11:54:21.434468','2020-11-29 11:54:21.434471 +00:00','2020-11-29 12:54:21.434472','+36 13:46:41.000000','+21-03')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (63,'V','X',239054849792,117651471900,4788307.11247,817099437504840.40905,111911272863883856151238.937985465086,56369119400000000000000,'Dummy clob for API method get_a_row: JMlfGuQokkwnETwIZJWEMckNkMvKjOna',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: PDDsgejBolqdIVPYGZFGaPtZgqpIDOUAArxzarayHupkFdISUQpoDTKwutBksEBpcndjMqWOUvrgtCs'),'1906-07-02 00:00:00','2020-11-29 11:54:21.434861','2020-11-29 11:54:21.434864 +00:00','2020-11-29 12:54:21.434865','+13 14:56:08.000000','+65-07')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (64,'vlykTvcnkiTTST','g',787540478184,230602253836,6256955.31405,405386882344502.12419,929371522841474445691794.720654714979,422978354500000000000000,'Dummy clob for API method get_a_row: wbueaYzUgWblqgrarTJDboTkRueQtgYipxnsiyWvhayX',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: htDmMHIkPvNWZvUEXCVTOeZeNWZtHbgWMoDGm'),'1997-04-25 00:00:00','2020-11-29 11:54:21.435240','2020-11-29 11:54:21.435243 +00:00','2020-11-29 12:54:21.435244','+57 21:22:55.000000','+21-05')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (65,'NnVZRBodwj','P',549679588799,622585299911,3805712.60939,676454779230731.90315,797422155074193170971177.039409642098,136372238500000000000000,'Dummy clob for API method get_a_row: MKmTTGhzBgUyfdUKdCPsQmwNGkTRkaKv',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: pWhKoEalUAiLDvCwcNqlBOTvFlDgsvuWqgpSYlPXPacprQDNhIWbZPpvHlqhzVHLgYdchSUroSbteXJmtZIRKkRySgz'),'1995-12-27 00:00:00','2020-11-29 11:54:21.435623','2020-11-29 11:54:21.435625 +00:00','2020-11-29 12:54:21.435627','+14 10:39:55.000000','+98-01')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (66,'YiXEVa','V',80885450828,741583618567,9729457.62062,662484011754709.09894,23382868237808674598139.863673773999,227336527700000000000000,'Dummy clob for API method get_a_row: AECSCDTHovsHmjQfqqrcDHyHeOQutriRXPjphPyJJzYelmiPdAhTQUjeSSNwuCZMLbw',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: zPpzpQHptgXHOxOKMSvqhwlcRXWUbVzkBXOTQoJKBGmgQbGHUVCsYixQmL'),'1975-08-29 00:00:00','2020-11-29 11:54:21.436092','2020-11-29 11:54:21.436095 +00:00','2020-11-29 12:54:21.436097','+33 17:07:30.000000','+90-01')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (67,'bemXVNZhXyY','j',729278281838,863790102602,4768258.65133,249485512831040.20269,1896002272088845996869.107901954755,75958795780000000000000,'Dummy clob for API method get_a_row: fUdjdWtqtIvSZPlvCAROdrtzxnVNYTBrSmbyRfYVsgguvQz',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: kfpHJKMdHyxBpuiLvXQquKRugyIYItJiSKUidNUZlY'),'1900-05-28 00:00:00','2020-11-29 11:54:21.436441','2020-11-29 11:54:21.436444 +00:00','2020-11-29 12:54:21.436446','+14 11:08:38.000000','+76-01')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (68,'kpbRDRdygREVLZ','R',694214585821,381544119847,1527895.58994,50451709678491.93967,713923583646344476122226.897002889871,634656009900000000000000,'Dummy clob for API method get_a_row: dqhLqSNlzIZEowVBZSUzYXiguKooCSLeozCLfXGbhRHkjjIilCpL',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: AwXAWAtlZQnHbPTTbdGkbkHGqPgMdzHTICpVC'),'1916-05-01 00:00:00','2020-11-29 11:54:21.436837','2020-11-29 11:54:21.436839 +00:00','2020-11-29 12:54:21.436841','+31 22:25:17.000000','+78-09')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (69,'ECKmpVe','S',220946553181,842856661813,2293525.68029,76788695919232.66589,262494436617093647389924.64273513094,995684008700000000000000,'Dummy clob for API method get_a_row: sFBcFGXUNPwmkmWzyqbzGeBEYqSWoykKAwJqTfshphSxJmBNkotVc',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: VQvUztFIfNMFcDRPhnYuwQQCRJfLsQxFavQIjYnXuBnvBbBiBJipmtBnZbfsKCNFJdOMcEnboLpyrSlTSOBeKytAXwBubBdDeB'),'1931-08-23 00:00:00','2020-11-29 11:54:21.437310','2020-11-29 11:54:21.437313 +00:00','2020-11-29 12:54:21.437315','+57 14:46:12.000000','+80-04')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (70,'odLnGrph','U',34529894342,136982369806,1120955.58641,621454158678642.77223,502164396380336648986533.060252335514,301820843900000000000000,'Dummy clob for API method get_a_row: jPecXgqnGxtEoWhOAPYeNKILmSUJGJoVOWpBEGROhdJFlQzFFiLjbJe',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: hyldpfIVTiGtcychsijybIRsAfshTSqwUbfulZkALPyOPcmyQviCSvNhdeL'),'1934-11-04 00:00:00','2020-11-29 11:54:21.437635','2020-11-29 11:54:21.437637 +00:00','2020-11-29 12:54:21.437639','+94 23:20:46.000000','+19-08')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (71,'OYNiExiNqlEq','a',528865650185,706565636324,7260177.556,263514095565711.2627,81387659776398656716998.989760615198,579622163300000000000000,'Dummy clob for API method get_a_row: QWrCJCTlGFLqNiSpXROuSROUqoqvCpLpUVKncDJSeBTeXKQlPaXQifBHLixMrfabbWeqmcIBSiY',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: ceFGOOMkUMwgDIzUjkuFXyVJmZmhIwGKKGNZxJwMsXHeedLVNCGpgtzODsnXLSufTJFBSwhcHCkBcgfzctXpqGY'),'1954-05-06 00:00:00','2020-11-29 11:54:21.438078','2020-11-29 11:54:21.438081 +00:00','2020-11-29 12:54:21.438083','+97 01:55:10.000000','+54-09')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (72,'MgNfwasyUFrrI','f',279657414079,613598119662,7337150.46141,216986671300590.79444,232919964895097712424597.221380750762,31763699610000000000000,'Dummy clob for API method get_a_row: TffFpQpQdBsDIPvWHImScMRYiPaImMaFozNeboaMPPd',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: hGduMJdvHQiBvFOccQWSBFijDViWYPkJSvSuYEEudJHjFbHDFweQVMB'),'2042-05-11 00:00:00','2020-11-29 11:54:21.438487','2020-11-29 11:54:21.438490 +00:00','2020-11-29 12:54:21.438492','+54 05:19:41.000000','+48-03')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (73,'aL','w',380537094924,198098634095,3608502.58966,443652450640840.70809,117275458228896974797766.105731388624,495756021600000000000000,'Dummy clob for API method get_a_row: JyUJrItgVtWWFOHlwdVmhmQPaedoLxWlQxmjDdObRxqCCzeIZzOWcvCkdxxCGQSmqIFIrWMObMpjmuXAdr',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: otYWuukmJtgNIGwLtVqWAMDGOqakHpIqzpoglssSkCZW'),'2028-07-02 00:00:00','2020-11-29 11:54:21.438852','2020-11-29 11:54:21.438855 +00:00','2020-11-29 12:54:21.438857','+18 00:34:09.000000','+71-10')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (74,'q','Q',48226993722,690894229046,9819637.40067,141327116890965.88792,25951916928675325999516.881455747301,688345805100000000000000,'Dummy clob for API method get_a_row: eRHkFclvyfhsbobPHDqooeGHEnBbnlenfbSxfODUoQRtjjFnstgJUvBjEJLtNPjeGzpGCfkvUHiYOMvwghkHgfWklert',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: nyuQGAmOpjMAOhiHxfkrwBuvFOrdhAgSjqkOjKcBfJhwSqodCVcasnZsNmunAShYaxOysL'),'1936-05-15 00:00:00','2020-11-29 11:54:21.439268','2020-11-29 11:54:21.439271 +00:00','2020-11-29 12:54:21.439273','+54 18:20:46.000000','+29-09')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (75,'YIjUEZnFLw','f',42354368446,688233431814,5662726.56916,193907025859217.57967,512021512619499972522901.662786804572,111708197900000000000000,'Dummy clob for API method get_a_row: uKKDMukePYBCwJjNcgWiooAAPdDbBUstXybFQoHgGXXgsgaMGPOSpXlKnOfOOcXnWdHMyquiEuOgUbMW',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: SuqrdDLMGTeQeUcBftqWUvLKdyKzxhhgZFGGbyjkbrPVOLFaHWrwHhEwtAqbkstgYkXGTMlGkFsjGQllVBvFPldTFwh'),'1948-07-03 00:00:00','2020-11-29 11:54:21.439705','2020-11-29 11:54:21.439708 +00:00','2020-11-29 12:54:21.439710','+83 13:19:58.000000','+53-08')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (76,'iYrhrckgO','p',639325172430,287232900109,489632.26058,736822317704808.6681,632669827806564156067545.3008351634,998435450000000000000000,'Dummy clob for API method get_a_row: GgSqZOUiUuwxPaZhyQZKbZGNXZDUIpJOre',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: oPinBcjNiFGZRAutrkBQdGVLiDewLZbleINjazmshfffXTwMtqarxAqXSMkNBLyNOTIrzhlY'),'1959-09-14 00:00:00','2020-11-29 11:54:21.440123','2020-11-29 11:54:21.440126 +00:00','2020-11-29 12:54:21.440128','+63 21:01:29.000000','+34-05')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (77,'uEoIZSIxU','w',541225280700,203485249517,7196180.67471,112759202963647.80484,911251276732308078268723.063103821786,971258474500000000000000,'Dummy clob for API method get_a_row: OKFtaNHKRzcJDqofcTXyHkzBQPfehDzHBXrrkqoLFddNFIAPqvwSsyefZlYIQGRTWTBoh',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: qixALMsAQHKbwaBembIPABxGecxeBnkqxovIekyvmkNViSlEufjBpfjUKvfNzcrOwGkbK'),'1901-04-05 00:00:00','2020-11-29 11:54:21.440530','2020-11-29 11:54:21.440532 +00:00','2020-11-29 12:54:21.440534','+50 11:13:25.000000','+70-07')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (78,'jKYHhg','S',386137849791,220930308297,1435489.59256,686227058171597.80728,523185178619979885056099.635160583673,426558305700000000000000,'Dummy clob for API method get_a_row: hXYecDyKHusUhChkPWZWkqupYlbEbtpvbxrPeuVAZG',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: kFxtKGgqnBoyFIAiExnGjrjkMxDlpcRHqooAfSRrchnAkxaTbibkRpcxCAezjxxdqczkaRagebGTpJEofeVGStEsp'),'1970-04-30 00:00:00','2020-11-29 11:54:21.440985','2020-11-29 11:54:21.440988 +00:00','2020-11-29 12:54:21.440990','+00 07:18:17.000000','+39-04')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (79,'mlLP','A',127899120540,199446261468,6540832.26609,76696347868089.85098,148308354950767614329619.720201545218,987449987400000000000000,'Dummy clob for API method get_a_row: gCEFqPmIcbMWzMqcmZKmyRsCzwfxpaCQQNrXndhxvfPwMDiDXJXvLtegyjDfppYsoEtnp',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: ZiEajKVaFXFCtBThwPxuCdTFpkjJkCaHlckGGgUkDEmxhIXVHlzwQJdPSokTMv'),'2031-07-28 00:00:00','2020-11-29 11:54:21.441345','2020-11-29 11:54:21.441348 +00:00','2020-11-29 12:54:21.441349','+83 23:47:11.000000','+01-07')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (80,'SATjrkmqaxWi','B',213741023523,75761030464,4353839.94481,91781552612190.48095,317619531665055160851478.121381224606,388935673800000000000000,'Dummy clob for API method get_a_row: YqzggmezmfxeYhHopDUdKnxSVSJGZWOUPqGUqoHVZlpTYjvOVZIaNkBuIJmGItUCWDyPWOKPoKxiXt',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: rrShnGQPYAtazibXwoojvyFdKjGJkdimAcUtPKkaXxZOEqiLdygeVzKCaYrXkyBYcNTOsLyTmN'),'2092-01-27 00:00:00','2020-11-29 11:54:21.441734','2020-11-29 11:54:21.441737 +00:00','2020-11-29 12:54:21.441739','+01 18:46:47.000000','+76-07')
|
||||
select * from dual;
|
||||
insert all
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (81,'nGcsobBLRzI','y',998188186885,213890333400,8722293.20942,562886641094407.65195,945152669809591913665686.896772040157,39559762500000000000000,'Dummy clob for API method get_a_row: ZAatxhlRvqxTQMWuSXMYlonqnixgTzKPzZWvuDXXsFoKOxrOAvtUeCXMjYaRhwhuQUPLPtRLdB',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: zleFoerByCicixxNbzESIZEVdrIZdwcUQhcBNPbPjeKdORcnPyjTDFEdcneRbUWOjKdwNZcLePvXr'),'2028-03-10 00:00:00','2020-11-29 11:54:21.442218','2020-11-29 11:54:21.442221 +00:00','2020-11-29 12:54:21.442223','+16 20:47:50.000000','+86-07')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (82,'gy','U',136824198571,354622892063,7869136.04544,702181749276155.37573,964400545533908119018554.775704318048,570315969600000000000000,'Dummy clob for API method get_a_row: KaOLdMRzqdZTKVCHZTuqSEwMDkqrDZnfaxykzUVaFPMggCmplgJDcDwOLFCglEeQbYEKpYieiHWzHjC',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: RzugcktlCBRlYArgnQqWaVTTogCkmzDcExNOpYCeZVvOYaKVYNVhFWJFgxQPjxNHyezOYuKNmlkyvepNtYRrVM'),'2029-04-02 00:00:00','2020-11-29 11:54:21.442581','2020-11-29 11:54:21.442584 +00:00','2020-11-29 12:54:21.442586','+70 21:33:33.000000','+48-05')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (83,'lYzuc','U',410968656732,672038283829,2097540.62698,986073987852628.32582,110842023496468471994063.341978448996,618540542600000000000000,'Dummy clob for API method get_a_row: LAKQLkegLeRHXPreRUwgScRBXqSzfzaWvDJSMRaVaDtEcnuRsUYwZKXjqdPq',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: FCGhbakhSzsXqkvQMSQLrwFJyFlgZIwWdcIeToKGuKQLJrpWpzBUMvtDIsNBjhDwcACJYFWGdhWAnu'),'2023-11-01 00:00:00','2020-11-29 11:54:21.442968','2020-11-29 11:54:21.442971 +00:00','2020-11-29 12:54:21.442972','+76 02:45:01.000000','+72-01')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (84,'ZlUWgCVNCWKS','h',944807906872,240424590969,5604153.36864,366292619823028.45371,630009583265240651787069.365121995482,465388331600000000000000,'Dummy clob for API method get_a_row: slZhothyICCnKJxWBXKBtQOSbaXrzOzuXtXhkRSqDiPavEdinOmqzMSTMwZoIgsfvZUvbQMFGaboVrBOpJizaRNkpxVtyLWzIkVX',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: pntpOfVDTiCGIniyGQlWqoZciEPKxLqhoIeYNUelwmwFJcwSmkfaKwxYrJz'),'1948-01-05 00:00:00','2020-11-29 11:54:21.443421','2020-11-29 11:54:21.443423 +00:00','2020-11-29 12:54:21.443425','+82 05:42:09.000000','+81-07')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (85,'WIMjCDhbz','W',892092757383,405067707026,7796939.51694,894235449800264.88395,700483726119503275479761.203126741945,161701555200000000000000,'Dummy clob for API method get_a_row: XIDRFCPKGBJjbhzMVOFEhFiugrCHQJKNaKqgVHDmFtEaipBdaVfXgLkEzFYWLZXgLAQwoDzaIKePujXGMhexUu',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: aPPDghbSQuVWXsADigJmbuHLMmDUgUpGaQUdWeSrCfBmmjbptrRYP'),'1909-05-21 00:00:00','2020-11-29 11:54:21.443781','2020-11-29 11:54:21.443784 +00:00','2020-11-29 12:54:21.443786','+55 17:02:22.000000','+45-03')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (86,'QZ','L',791288507409,1840031637,8765603.77472,443130529171243.34028,355530361758472638727249.758424462353,907202369300000000000000,'Dummy clob for API method get_a_row: ycMBakQxKZsFDNAvwidFdTooQwUhJhFEzsHCuxJpOBApWYDvfHPhdqgOYgikRWCJSzHyKJkLjdvzrsjwDjPmXlTYY',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: mMTLzhBHnghoGPlKhUiPLbPyXpHVhrqtKeUjtkljgYhqLpuwHGBeAooJBbhgYrByLBYzAXtNtPFWRKufvIAhfeD'),'1948-11-25 00:00:00','2020-11-29 11:54:21.444199','2020-11-29 11:54:21.444202 +00:00','2020-11-29 12:54:21.444203','+12 01:19:20.000000','+55-08')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (87,'raFqMMoKBV','B',328709410195,970864925114,6749330.35397,785760490127757.6518,951871804193306759399465.895040032453,702997750000000000000000,'Dummy clob for API method get_a_row: IRntaBOZqTtEkqORQPvSZlfUGFJtLIXXS',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: GJmMuzGNsNukgPfyrZzzWPXxnmKlwIrzNXCJQWdnfTVLjmEATKHumpVtvwxrHx'),'1952-03-06 00:00:00','2020-11-29 11:54:21.444616','2020-11-29 11:54:21.444619 +00:00','2020-11-29 12:54:21.444621','+11 16:56:52.000000','+95-08')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (88,'mWs','L',124190930052,25708819524,5382209.61479,962650588406287.65905,122689339418057866844593.107866975298,937548042800000000000000,'Dummy clob for API method get_a_row: hXQfuBiebfeyIVOJfctWKVOodjkoSUzLxWpBRncWBkwoIYsBEopgoqZKGAUNWiqYCUzaJrfhMqLTtHph',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: ZVHKZVEXKOnWTuDFwPRPYiReAAixOrfZqUgHMdZfONfKalSmalJfYyDZWpHnNjw'),'1904-03-13 00:00:00','2020-11-29 11:54:21.444983','2020-11-29 11:54:21.444986 +00:00','2020-11-29 12:54:21.444988','+66 09:34:36.000000','+45-06')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (89,'KcxZyUjRamr','m',816935749669,665618987524,9846947.9027,238084245369026.11316,182947376504333229652592.23341102991,776527384300000000000000,'Dummy clob for API method get_a_row: vESpKZiGrmcxwRcGzNbXWfexecAMfKGWXBTngaMUIXffyZqOelTWVqcZhTCpjpcPovkdroaIk',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: CVEUMIOUiAAjwFVVcPPokxSPIqNQWOsWraKpiwn'),'2041-02-01 00:00:00','2020-11-29 11:54:21.445363','2020-11-29 11:54:21.445366 +00:00','2020-11-29 12:54:21.445368','+81 16:28:29.000000','+40-02')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (90,'NsHdK','C',441604769506,212570457646,2363945.46951,356920815344774.64307,728038649454778621916283.990390713094,674005866400000000000000,'Dummy clob for API method get_a_row: FmRkumSbZEJtuisoCPtOCKjtaBpmDuobEnRniJrlqJFEsFzqnRtXSgdgoGWxgGDdragcsjZsZzTvQik',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: TjJVaRHsunkPQvOikmhlpYjMRMSjPNuHqfTHYLWmORrJfobKm'),'1901-02-09 00:00:00','2020-11-29 11:54:21.445824','2020-11-29 11:54:21.445827 +00:00','2020-11-29 12:54:21.445829','+61 03:09:22.000000','+51-08')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (91,'bFpeBAkTEWpGkU','E',471872046020,894392764827,4037186.35802,247949372224942.73416,209288623717840900458139.665572704073,447708733100000000000000,'Dummy clob for API method get_a_row: WsWadUsTHrgamtGlGgulYQrLTgvgTKPkOtIzirFgmqRLTi',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: lejuyLDXqZSGweIEWkpaVkMSsWMxszxwyPqeeNn'),'2001-03-13 00:00:00','2020-11-29 11:54:21.446135','2020-11-29 11:54:21.446137 +00:00','2020-11-29 12:54:21.446139','+76 05:18:55.000000','+24-11')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (92,'CXfs','E',902542779820,481007651499,5754197.8299,29207949207177.94449,914241984066613877959372.472503802744,852734414200000000000000,'Dummy clob for API method get_a_row: CdNInMyhBmqIAUcddrTPaQpQrLxQJvGuQfO',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: ydsjWebtGouyueUkJdTtpKZwHFcRRFozyVNAVuIgEkOlqRATYaoFpndFjUBnjQsEJIyPYcQNNi'),'2018-12-13 00:00:00','2020-11-29 11:54:21.446511','2020-11-29 11:54:21.446513 +00:00','2020-11-29 12:54:21.446515','+60 12:29:18.000000','+60-07')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (93,'XGsSE','q',295017917116,755846817993,877467.37755,201200917702433.98309,22239375266012846108537.194867259045,723295251300000000000000,'Dummy clob for API method get_a_row: gtyXNQzVyYUJrEzfnFqCCUiSivnibMTBccaqWvCtuMFIrjpLLCrywXzPolFpcSWbBuzNzBZiRwL',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: EXeuxegXkSQQOgfyNZUwGFWrkOudzCtAvdKmQmMNlnsPaeMMateYBhlomYXxhZYgwaDeSrLzMMLhjjDLIZBAkepiCijyM'),'2041-06-07 00:00:00','2020-11-29 11:54:21.447032','2020-11-29 11:54:21.447035 +00:00','2020-11-29 12:54:21.447037','+86 15:17:54.000000','+88-10')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (94,'YMnGqGk','p',9026422411,891758540339,9672219.00587,497507626542984.43106,961928789415986659585265.317475164965,351029651600000000000000,'Dummy clob for API method get_a_row: ZydtOOvhqYFzINhjTYDqzRTswaMNzpcBEkJNcKpcaZplOqRkpBygpBPVZpHOD',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: iuIPNlYXLtyscOHkdmcLuoqrWdaQbgiYWioCXnNdenuauwlsICBBCuPFYjfpSH'),'2087-09-03 00:00:00','2020-11-29 11:54:21.447390','2020-11-29 11:54:21.447393 +00:00','2020-11-29 12:54:21.447395','+66 13:44:54.000000','+98-00')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (95,'NHZXmok','k',598245422886,625079551777,5350033.6397,350353099922047.15843,586533124635235004574527.086270953815,518192624300000000000000,'Dummy clob for API method get_a_row: bcABzvvQiHwhNLDZwZBdTaIcmnQofRgcDpAktHqptnjFpczvxwvhqrUOQQpfNcsmxxRHTuOpNkiICIXjkLWWJAqTG',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: PGjjbqlBMIWOlLheqtAsyAcLBWdjGDnhODdqgymvRZXJvRqMPKspUiBQdNSitYibMAERJTZISXBtSSYRgWYalpx'),'2069-12-30 00:00:00','2020-11-29 11:54:21.447833','2020-11-29 11:54:21.447836 +00:00','2020-11-29 12:54:21.447838','+31 21:28:30.000000','+45-04')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (96,'dZcaFlQ','i',649982286179,884084787852,6699311.73643,745650453918403.70471,14424717681595900479138.921037915035,502447608700000000000000,'Dummy clob for API method get_a_row: zawloDViObylDXOMLhFQPFMyypmPSSeTIVkmanLaxaUOUhAxZUVJqptyPiBHVABWwjXdKamJIafjmNvYJIZJHYRYDmuwoN',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: uJsseHnGhuAtdCpWZrbQdZTvAWSaynjDRSYOuBCGEJSmKOoyvNKZNgsufKSduXKzNZHYDscdAuDnnHtvkczMUcyxdqrpYNGR'),'2032-10-14 00:00:00','2020-11-29 11:54:21.448418','2020-11-29 11:54:21.448421 +00:00','2020-11-29 12:54:21.448423','+50 05:16:08.000000','+32-06')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (97,'INMBolqPnSqOzI','q',306576935079,989775042276,2549808.65128,540218862648007.22838,109630207120227902278137.808365186135,672348160000000000000000,'Dummy clob for API method get_a_row: cwFPsiVgzMVsluBPFCchuKPlrigNFTeyqsCTTov',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: kciainnTZrmxvNsUflcxBAeqFXMEiwdpeKIcyDEQaTKAgXTV'),'2016-10-12 00:00:00','2020-11-29 11:54:21.448818','2020-11-29 11:54:21.448821 +00:00','2020-11-29 12:54:21.448822','+58 07:24:46.000000','+49-01')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (98,'zufQjRIDCvat','x',724745520889,102517839853,875249.26842,746776819339251.09794,971284174384940686518565.170128865669,651456696700000000000000,'Dummy clob for API method get_a_row: wGgcuhoSCDlxFXhfLJBpIhDaBtUPkWzvvOldBQDNJTQdQLXNvUIBLmTyABseEnOyRWbGnksUcRSZtaoxOcQvITuvPdI',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: ERLbqrjEvPiYmaaENHvOdJaNGIuhAjMsCEwTIC'),'2016-03-02 00:00:00','2020-11-29 11:54:21.449201','2020-11-29 11:54:21.449203 +00:00','2020-11-29 12:54:21.449205','+78 19:25:24.000000','+01-01')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (99,'AWbqJtmjSLaFJ','a',933890965612,942570252474,9649811.35418,387890938003512.57791,585711780110860135606784.975737095885,838002232000000000000000,'Dummy clob for API method get_a_row: kgLggmmDXJxeyaoHBHvDPskSZxxXrLnLKsdjGcqAkZtnKChIkWrAdTEKdIEYyaPiCbOECfHmhoqauSbKT',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: YVfsWoBhIECGimAHrNhpuSLibYlgUxyctdTlWDIWIFlqYiwiobHWceYztRZrmzJChVsFpJeASSgTAHRPztCwcW'),'2005-01-29 00:00:00','2020-11-29 11:54:21.449711','2020-11-29 11:54:21.449714 +00:00','2020-11-29 12:54:21.449716','+75 21:50:33.000000','+17-01')
|
||||
into PLEX_TEST_MULTIPLE_DATATYPES(PTMD_ID,PTMD_VARCHAR,PTMD_CHAR,PTMD_INTEGER,PTMD_NUMBER,PTMD_NUMBER_X_5,PTMD_NUMBER_20_5,PTMD_FLOAT,PTMD_FLOAT_SIZE_30,PTMD_CLOB,PTMD_BLOB,PTMD_DATE,PTMD_TIMESTAMP,PTMD_TIMESTAMP_TZ,PTMD_TIMESTAMP_LTZ,PTMD_INTERVAL_DAY_TO_SECOND,PTMD_INTERVAL_YEAR_TO_MONTH) values (100,'YqbdvO','a',686062482895,131802698946,8944675.96907,766182784695356.48878,795504965950776212891438.420187744522,548049056700000000000000,'Dummy clob for API method get_a_row: OukDZUxmeCGelAWlwYBwlknCLhiTHZphHPmArfTQoXLDKGhiNOJNHYzacTXgunUlRsfdgqBkwMzvqVkZwrhOypIjiJhmTnBF',utl_raw.cast_to_raw('Dummy blob for API method get_a_row: rgrxjSJbIJyujzYKFvsccVzCMPAeDpMDfnnEDiXzqMsYIHsPcfwQ'),'1988-03-11 00:00:00','2020-11-29 11:54:21.450123','2020-11-29 11:54:21.450126 +00:00','2020-11-29 12:54:21.450128','+09 08:04:54.000000','+83-06')
|
||||
select * from dual;
|
||||
commit;
|
||||
alter session set cursor_sharing = exact;
|
||||
timing stop
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user