Improve default type mappings for IMPORT FROM ORA

Details

Detail name Value
Changelog Number 8385
Type Improvement
Status Open

Currently, when the column definitions of the destination in Exasol are not provided for an IMPORT statement, the IMPORT process chooses a default format into which the values are converted. For an Oracle NUMBER, it's VARCHAR (in scientific notation).

This behavior should be improved (i.e. changed to DECIMAL). Furthermore, the type mappings in general should match as closely as possible the type mappings for IMPORTs from JDBC.

Example:
Oracle:

create table test_ora(c1 number(12), c2 date);
insert into test_ora values (18148, '25-DEC-2018 12:12:12');

IMPORT into Exasol (no destination column definitions provided):

create or replace table t1 as (
  select * from (
    import from ora at ora_conn table test_ora
  )
);

describe t1;
->C1	VARCHAR(1024) UTF8
->C2	DATE

select * from t1;
->01.8148E4	2018-12-25

IMPORT into Exasol (with destination column definitions provided):

create or replace table t1 as (
  select * from (
    import into (c1 decimal(12), c2 timestamp) from ora at ora_conn table test_ora
  )
);

describe t1;
->C1	DECIMAL(12,0)
->C2	TIMESTAMP

select * from t1;
->18148	2018-12-25 12:12:12