将数据从csv文件导入IBM netezza sql数据库时出错

时间:2014-09-30 20:16:47

标签: sql database import netezza

我需要通过Aginity Netteza工作台将csv文件(122 GB,所有字段都是整数或字符串)导入IBM netezza sql数据库中的表。

我创建了一个表,其中的字段名称与csv文件中的字段匹配。

当我导入数据时出错:

 Unable to export the data to a file. Error: required option for internal format is not set: Compress

我很困惑,因为我正在进口而不是出口。这是我的SQL查询:

  CREATE TABLE my_table
  (
    id integer ,
    value1 integer ,
    value2 character varying(2) ,
    value3 integer ,
    value4 character varying(32) ,
    value5 integer ,
    value6 double precision
  ); 


   INSERT INTO my_table
   SELECT * FROM 
   EXTERNAL 'E:\\my_path\\my_file.csv'
   USING
   (
      DELIMITER ','
      LOGDIR 'C:\\my_log'
      Y2BASE 2000
      ENCODING 'internal'
      SKIPROWS 1
      REMOTESOURCE 'ODBC'
      ESCAPECHAR '\'
   )

任何帮助将不胜感激。

谢谢

1 个答案:

答案 0 :(得分:1)

我认为这是一个误导性错误文本的案例。如果要从CSV导入,则应使用Text作为FORMAT。它看起来好像是默认为内部'这不是你想要的。尝试添加FORMAT' text'到USING部分明确声明您正在使用文本文件。

INSERT INTO my_table
   SELECT * FROM 
   EXTERNAL 'E:\\my_path\\my_file.csv'
   USING
   (
      DELIMITER ','
      LOGDIR 'C:\\my_log'
      Y2BASE 2000
      ENCODING 'internal'
      SKIPROWS 1
      REMOTESOURCE 'ODBC'
      ESCAPECHAR '\'
      FORMAT 'text'
   )