2

I am trying to load the following csv file into a table:

    TIMESTAMP          ; SESSIONID;PROXY_SESSIONID;    ACTION;USERNAME            ;USERHOST            ;OS_USERNAME         ;CLIENT_ID           ;ACTION_NAME         ;TRANSLATE(SQL_TEXT,'X'||CHR(9)||CHR(10)||CHR(13),'X')
04-29-2014 21:46:40; 707304320;NULL           ;     3;COMP             ;preview.firma.de  ;console             ;                    ;SELECT              ;SELECT TRIM(LEADING '.' FROM class || '.' || name) AS key_for_value, value AS value FROM config_tbl

my control file is the following:

OPTIONS(skip=1)
LOAD DATA
INFILE 'dump_audit_table.csv'
INTO TABLE tmp_audit_trail  
TRAILING NULLCOLS
(
 TIMESTAMP date "MM-DD-YYYY HH24:MI:SS",
 SESSIONID INTEGER EXTERNAL TERMINATED BY ';',
 PROXY_SESSIONID INTEGER EXTERNAL  TERMINATED BY ';',
 ACTION char "TO_NUMBER(:ACTION, '999')",
 USERNAME char(30) TERMINATED BY ';', 
 USERHOST char(128)  TERMINATED BY ';', 
 OS_USERNAME char(255) TERMINATED BY ';', 
 CLIENT_ID char(64) TERMINATED BY ';',
 ACTION_NAME char(28) TERMINATED BY ';', 
 SQL_TEXT char(2000)  TERMINATED BY ';'
)

And this fails with:

Record 1: Rejected - Error on table TMP_AUDIT_TRAIL, column ACTION.
ORA-01722: invalid number

I Can't figure why this is an invalid number. #

Update: The following line can be read:

04-29-2014 21:46:40; 707304320;;3;USER;preview.firma.de;console;;SELECT;SELECT TRIM(LEADING '.' FROM class || '.' || name) AS key_for_value, value AS value FROM config_tbl

The solution is: No leading and trailing spaces are allowed!

oz123
  • 141
  • 1
  • 7

0 Answers0