我正在通过命名管道读取 CSV 文件。在 CSV 文件中,field2 列是空白的,需要将其作为 NULL 插入到表列中。表列是整数类型,但是当我尝试运行摄取时
我收到一条错误消息,提示“field2 无法转换为值类型:整数”。
这是我下面的代码
mkfifo mypipe
tail -n +2 myfile.csv > mypipe &
db2 "INGEST FROM FILE mypipe
FORMAT DELIMITED
(
$field1 CHAR(9),
$field2 INTEGER EXTERNAL,
$field3 CHAR(32)
)
INSERT INTO my_table
VALUES($field1, $field2, $field3)"
在上面的代码中,$field2 将为空白。在 my_table 中,当 csv 中的字段为空白时,$field2 值不会作为 NULL 插入。
示例输入 csv 数据如下所示
Subject_Name,Student_ID,STATUS
Maths,,COMPLETED
Physics,,PENDING
Computers,,PENDING
我希望在下表中摄取数据
Subject_Name|Student_id|STATUS |
------------|----------|---------|
Maths |NULL |COMPLETED|
------------|----------|---------|
Physics |NULL |PENDING |
------------|----------|---------|
Computers |NULL |PENDING |
------------|----------|---------|
任何人都可以提出解决此问题的方法吗?