我正在尝试使用DB2 CLPPlus工具导入文件,如下所示:
cat outfile
1;"a";"b"
2;"c";"d"
clpplus -nw
SQL> SET COLSEP ';';
SQL> CONNECT MYUSER/MYPWD@IP:PORT/BLUDB;
SQL> IMPORT FROM '/home/i1058/outfile' INSERT INTO USER1.TABLE3;
[jcc][1091][10404][3.69.66] Invalid data conversion: Parameter instance 1;a;b is invalid for the requested conversion. ERRORCODE=-4461, SQLSTATE=42815
在IMPORT命令(https://www.ibm.com/support/knowledgecenter/SSEPGG_11.1.0/com.ibm.swg.im.dbclient.clpplus.doc/doc/r0059535.html)的CLPPlus工具的DB2官方文档中,我们可以看到以下内容:
只能从分隔文件导入数据。分隔文件可以是任何文件类型,例如:.del,.ixf或.txt。字符是默认分隔符。 您可以使用SET CLPPlus命令将分隔符设置为其他字符。
粗体中有一句话与我想要的完全匹配,但不幸的是,它没有用,或者我错过了一些东西。有人可以帮忙吗?
谢谢和问候, 斯蒂芬
答案 0 :(得分:0)
您需要为CLPPlus设置delimiter
选项,而不是colsep
:
SQL> show delimiter
Delimiter ,
SQL> SET delimiter ";"
SQL> IMPORT FROM '/home/i1058/outfile' INSERT INTO USER1.TABLE3;
Number of Rows Inserted:2