【问题标题】:Loading 532 columns from a CSV file into a DB2 table将 CSV 文件中的 532 列加载到 DB2 表中
【发布时间】:2010-12-23 09:16:06
【问题描述】:

总结:可以从 CSV 文件导入/加载的列数是否有限制?如果是,解决方法是什么?谢谢

我是 DB2 的新手,我应该导入一个 | (管道)分隔的 csv 文件,其中包含 532 列到一个 DB2 表中,该表也有 532 列在 csv 的确切位置。我还有一个较小的文件,在 csv 和 table 中只有 27 列。我正在使用以下命令:

IMPORT FROM "C:\myfile.csv" OF DEL MODIFIED BY COLDEL| METHOD P (1, 2,....27) MESSAGES "C:\messages.txt" INSERT INTO PRE_SUBS_GPRS2_1010 (col1,col2,....col27);

这很好用。

但是在第二个文件中,是这样的:

IMPORT FROM "C:\myfile.csv" OF DEL MODIFIED BY COLDEL| METHOD P (1, 2,....532) MESSAGES "C:\messages.txt" INSERT INTO PRE_SUBS_GPRS_1010 (col1,col2,....col532);

它不起作用。它给了我一个错误,上面写着:

SQL3037N  An SQL error "-206" occurred during Import processing.

Explanation: 

An SQL error occurred during processing of the Action String (for 
example, "REPLACE into ...") parameter.  

 The command cannot be processed.  

User Response: 

 Look at the SQLCODE (message number) in the message for more 
information.  Make changes and resubmit the command.  

我使用控制中心来运行查询,而不是命令提示符。

【问题讨论】:

    标签: database csv import db2


    【解决方案1】:

    问题是因为 INSERT 语句的列列表中的列名之一长度超过 30 个字符。它被截断并且未被识别。

    希望这对将来的其他人有所帮助。如果您需要更多详细信息,请告诉我。

    【讨论】:

      【解决方案2】:

      具体的错误代码是SQL0206,关于这个错误的文档在这里 http://publib.boulder.ibm.com/infocenter/db2luw/v9r7/topic/com.ibm.db2.luw.messages.sql.doc/doc/msql00206n.html

      对于限制,我认为导入中的最大列数应该是表允许的最大数量。去信息中心看看 数据库基础 > SQL > SQL 和 XML 限制 表最大列数 7 1012

      尝试只导入一行。如果您遇到问题,可能是由于类型、列顺序、重复行与表中已经存在的行不兼容。

      【讨论】:

        猜你喜欢
        • 2016-06-04
        • 2017-09-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-05-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多