Postgresql Postgres:使用时间戳类型的CSV复制时出错

Postgresql Postgres:使用时间戳类型的CSV复制时出错,postgresql,Postgresql,我正在使用Postgres 9.5.3(在Ubuntu 16.04上),我有一个带有一些timestamtz字段的表 ... datetime_received timestamptz NULL, datetime_manufactured timestamptz NULL, ... 我使用以下SQL命令生成CSV文件: COPY (select * from tmp_table limit 100000) TO '/tmp/aa.csv' DELIMITER ';' CSV HEADER;

我正在使用Postgres 9.5.3(在Ubuntu 16.04上),我有一个带有一些
timestamtz
字段的表

...
datetime_received timestamptz NULL,
datetime_manufactured timestamptz NULL,
...
我使用以下SQL命令生成CSV文件:

COPY (select * from tmp_table limit 100000) TO '/tmp/aa.csv' DELIMITER ';' CSV HEADER;
CM0030;;INV_AVAILABLE;2016-07-30 14:50:42.141+07;;2016-08-06 00:00:000+07;FAHCM00001;;123;;;;;1.000000;1.000000;;;;;;;;80000.000000;;;2016-07-30 14:59:08.959+07;2016-07-30 14:59:08.959+07;2016-07-30 14:59:08.959+07;2016-07-30 14:59:08.959+07;
并使用:

COPY tmp_table FROM '/tmp/aa.csv' DELIMITER ';' CSV ENCODING 'UTF-8';
导入到表中

CSV文件中的行示例:

COPY (select * from tmp_table limit 100000) TO '/tmp/aa.csv' DELIMITER ';' CSV HEADER;
CM0030;;INV_AVAILABLE;2016-07-30 14:50:42.141+07;;2016-08-06 00:00:000+07;FAHCM00001;;123;;;;;1.000000;1.000000;;;;;;;;80000.000000;;;2016-07-30 14:59:08.959+07;2016-07-30 14:59:08.959+07;2016-07-30 14:59:08.959+07;2016-07-30 14:59:08.959+07;
但是我在运行第二个命令时遇到以下错误:

ERROR:  invalid input syntax for type timestamp with time zone: "datetime_received"
CONTEXT:  COPY inventory_item, line 1, column datetime_received: "datetime_received"
我的数据库的时区是:

 show timezone;
 TimeZone  
-----------
 localtime(GMT+7)
(1 row)
是否缺少任何步骤或配置错误


任何建议都将不胜感激

您看到的错误意味着Postgres正在尝试(但失败)将字符串
'datetime\u received'
转换为时间戳值

之所以发生这种情况,是因为
COPY
试图将标题行插入表中。您需要在
COPY FROM
命令中包含
HEADER
子句,就像在
COPY to
命令中一样


一般来说,使用
COPY
移动数据时,应确保
to
FROM
命令使用的选项完全相同。如果客户端编码不是UTF8,则为一个命令而不是另一个命令指定
ENCODING
可能会导致错误,或导致数据自动损坏。

/tmp/aa.csv
中的行看起来像什么…@donkopotamus Edited;)只是一个怀疑:将该行上的
2016-08-06 00:00:00+07
更改为
2016-08-06 00:00.000+07
,然后再次运行它。在这里使用简化的表格测试,但直接复制您的值,可以加载,日期格式可以。请提供实际的表结构(CREATETABLE语句)好吗?它试图(但失败)将字符串
'datetime\u received'
解释为时间戳。您忘记告诉
COPY FROM
忽略标题。