我试图通过bteq导入数据将数据导入teradata,但我不能,因为我有这个问题:
*失败2621 LT_CDG_UNICO.NRO_VUELO_的格式或数据中的字符不正确 REF。 声明#1,信息= 0 * 警告:数据不足。
我试图导入:
LA; 100; NULL; NULL; 2016年1月1日; 2050年1月1日
我创建这个bteq导入这个:
bteq << CARGA_CDG_UNICO > ${FILE_LOG} 2> ERROR_${FCH_HRA}.LOG
.LOGON ${SERVER}/${USER},${PASS};
.IMPORT VARTEXT ';' FILE='${FILE2}';
.REPEAT *
USING CDG_OPE(VARCHAR(20)), NRO_VLO(VARCHAR(20)), CDG_OPE_REF(VARCHAR(20)),NRO_VLO_REF(VARCHAR(20)), FCH_INI(VARCHAR(20)), FCH_FIN(VARCHAR(20))
INSERT INTO ${DBTB} (CDG_OPERADOR,NRO_VUELO,CDG_OPERADOR_REF,NRO_VUELO_REF,FCH_INI_VIGENCIA,FCH_FIN_ VIGENCIA) values (:CDG_OPE,:NRO_VLO,:CDG_OPE_REF,:NRO_VLO_REF,:FCH_INI,:FCH_FIN);
.IF ERRORCODE <> 0 THEN .QUIT ERRORCODE;
.LOGOFF;
.QUIT 0;
CARGA_CDG_UNICO
}
答案 0 :(得分:1)
输入文件中的null
被视为实际值,您的目标可能是数字列,因此转换字符串null
失败。
您需要申请NULLIF
,例如
NULLIF(CDG_OPERADOR_REF, 'null')