0

I have a control file that loads text to oracle but i am trying to populate field C_TIPO_PRATICA with a case statement, please see below control file and the error I receive. what should be the syntax?

ctl file:

LOAD DATA
INFILE *
APPEND
INTO TABLE ANAGRAFICA_INDIRIZZI
(
C_BANCA POSITION (1) CHAR(4),
NDG POSITION (5) CHAR(9),
C_TIPO_PRATICA POSITION (14) CHAR(2) "CASE WHEN C_TIPO_PRATICA IS NULL THEN '  ' ELSE C_TIPO_PRATICA END" ,
N_PRATICA POSITION (16) CHAR(8),
C_TIPO_INDIRIZZO POSITION (24) CHAR(1),
N_GUIDA POSITION (25) CHAR(2),
D_RIFERIMENTO POSITION (27) CHAR(10),
S_TOPONIMO POSITION (37) CHAR(25),
S_INTEST_INDIRIZZO POSITION (62) CHAR(40),
N_CIVICO POSITION (102) CHAR(4),
C_CAP POSITION (106) CHAR(5),
S_DESC_COMUNE POSITION (111) CHAR(40),
C_PROVINCIA POSITION (151) CHAR(2),
C_NAZIONE POSITION (153) CHAR(4),
X_TS_INSERT "SYSDATE"
)

Please help

thanks

enter image description here

I tried to move the clause before the information of position, but it didn't work

Gary_W
  • 9,933
  • 1
  • 22
  • 40
agium
  • 1
  • 1

1 Answers1

0

Proceed the column name inside the double-quotes with a colon.

"CASE WHEN :C_TIPO_PRATICA IS NULL THEN '  ' ELSE :C_TIPO_PRATICA END"
Gary_W
  • 9,933
  • 1
  • 22
  • 40