2011-10-21 56 views
1

我正在使用SQL加載程序將數據加載到表中時出現以下錯誤。Sql加載程序錯誤「令牌長度超過258個字符的最大允許長度」

SQL*Loader-350: Syntax error at line 21. 
Token longer than max allowable length of 258 chars 
                    ') 
               ^

控制文件是如下:

OPTIONS (SKIP = 1) 
LOAD DATA 

APPEND 
PRESERVE BLANKS 
INTO TABLE "INTL" 
FIELDS TERMINATED BY '|' 
TRAILING NULLCOLS 

(
CO_BDI_INTERLOCUTOR CHAR(15), 
NU_DOCUMENTO CHAR(17), 
CO_TRATAMIENTO CHAR(1) "NVL(:CO_TRATAMIENTO,' ')", 
DS_NOMBRE CHAR(50), 
DS_APELLIDO_1 CHAR(50), 
DS_APELLIDO_2 CHAR(50), 
CO_CARGO CHAR(2) "NVL(:CO_CARGO,' ')", 
DS_COMENTARIO CHAR(255) "NVL(:DS_COMENTARIO,'                                                                ')", 
DS_ARE_FUN_ITL_GRC CHAR(100), 
FX_INI_VIGENCIA CHAR(10), 
FX_FIN_VIGENCIA CHAR(10) "NVL(:FX_FIN_VIGENCIA,'   ')", 
CO_CUC_CLIENTE CHAR(8), 
CO_CUC_CABECERA CHAR(8), 
CO_HITO CHAR(8), 
DS_SIS_ORIGEN CHAR(4), 
CO_INTERLOCUTOR CHAR(15), 
CO_TIPO_DOC CHAR(1), 
CO_IDIOMA CHAR(3) 
) 

這個問題似乎是與字段「DS_COMENTARIO」自我正在與長度爲255的空間替換數據如果該字段爲空。

我也有類似的問題與其他表和控制文件也。

你能幫我解決嗎?

謝謝, Savitha

回答

1

嘗試

DS_COMENTARIO CHAR(255) 「NVL(:DS_COMENTARIO,LPAD( ' '255'')」,

它基本上焊盤的1個字符字符串輸出到255個字符

+0

非常感謝!!!它解決了問題.... :) – Savitha

相關問題