我正在使用LOADFROM ${CSVFILE} OF DEL REPLACEINTO T_TABLE格式从脚本中的一个文件加载DB2表。SQL Developer会将值显示为(null),但这不是实际的null。我想要的行为是将此值设置为NULL,以便设置列的默认值。我如何才能使它在空字符串的情况下,它将设置为空值在DB中?
db2 "declare c1 cursor for select nullif (a, '') as a, b from external '${CSVFILE}' (a varchar (10), b int) using (delimiter ',' quotedvalue double)"
db2 "load from c1 of cursor replace into T_TABLE"
1条答案
按热度按时间vcirk6k61#
您可以使用EXTERNAL TABLE功能来实现这一点,因为使用user exit应用程序使
LOAD
将空值转换为NULL并不容易。备注:
您必须在
DECLARE CURSOR
命令中适当地描述所有文件字段。您可以在
USING
子句中使用其他适当的选项(ENCODING、CRINSTRING、LFINSTRING等)-有关详细信息,请参阅第1个链接。