我在两个具有相同结构的不同数据库中有两个表。
我将一个表导出到 .dat 文件中,然后使用 db2 import 命令将其导入到另一个表中:
import from $TEMP_DIR/TO_IMPORT.dat of del modified by dateformat=\"YYYY-MM-DD\" timeformat=\"HH:MM:SS\" timestampformat=\"YYYY-MM-DD HH:MM:SS.UUU\" chardel0x01 coldel| COMMITCOUNT 1000 messages $LOG_DIR/to_import.log insert into MY_SCHEMA.MY_TABLE
TO_IMPORT.dat 中的一行如下:
col1_val|col2_val|col3_val|col4_val|col5_val
分隔符是“|”
col1、col2、col3 是源表和目标表中的 NOT NULL 列。
但是,在源表中,在某些行中,col2 和 col3 中有空格而不是字符值。
这些来自 .dat 文件,如下所示:
abc| | |def|pqr
现在,在上述行的导入期间,这些空间被视为 NULL,因此尝试在目标表的非空列中插入空值时一切都失败了。
这个问题的解决方案/解决方法是什么?
谢谢阅读!