我正在使用 INSERT INTO 命令将 CSV 文件导入 Netezza:
INSERT INTO MY_TABLE
SELECT
*
FROM EXTERNAL 'C:\file.csv'
USING (
REMOTESOURCE 'ODBC'
DELIMITER ','
MAXERRORS 100000
SKIPROWS 1
ESCAPECHAR ''
)
;
Netezza"成功"完成了任务,即没有出现错误。但是,根本不导入数据。在 1000 行中,仅导入了 100 行,并且没有一行包含任何内容。
我按照在Netezza CSV加载中找到的代码进行操作
我还尝试通过外部表导入数据,但它以同样的方式再次失败。
我是否遗漏了某些内容,例如一些关键参数?此过程以前没有问题。我认为我尝试导入的 csv 文件没有任何问题。
我终于发现了这个问题,在这个线程中有更详细的解释:
将带有日期的文件加载到 Netezza 中
问题出在导入日期格式上。 需要在代码中指定以下两行:
日期样式 "DMY">
DATEDELIM'.">
根据您提供的链接,我看到可能需要两个参数。还有一个轻微的格式变化,可能会有所作为。
INSERT INTO MY_TABLE
SELECT * FROM
EXTERNAL 'C:\file.csv'
USING
(
DELIMITER ','
MAXERRORS 100000
SKIPROWS 1
Y2BASE 2000
ENCODING 'internal'
REMOTESOURCE 'ODBC'
ESCAPECHAR ''
QUOTEDVALUE 'DOUBLE'
)
IBM 还有一个数据加载指南,可以在这里找到。