通过csv将带有时间戳的数据从mongodb导入到postgresql

时间:2014-07-11 12:19:39

标签: mongodb postgresql csv pgadmin

我的目标是将我的数据从mongodb移动到postgresql 9.1.13。 我使用mongoexport将我的集合从mongodb导出到csv文件。后来我用pgAdmin 1.18.1创建表,并使用pgAdmin的import从csv文件导入。

在我使用datetime字段到达csv之前,它工作正常。在csv文件中,该列(在我的例子中称为“start”)具有以下格式2014-02-04T19:50:35Z。我为pgAdmin中相应列设置的格式为timestamp without time zone(我也试过了timestamp with time zone)。我从pgAdmin得到的是:

ERROR:  invalid input syntax for type timestamp: "start"
CONTEXT:  COPY context, line 1, column start_time: "start"

我的问题是:我应该以某种方式从mongodb以不同的方式导出,还是应该改变pgAdmin中的列类型?

我已经检查了thisthisthis解决方案,但不确定什么是好方法,因为我将从mongodb获得更多进口并希望使用最标准的通用时间戳格式,避免定义自定义日期时间格式。

P.S。我是SQL和postgres的菜鸟。

2 个答案:

答案 0 :(得分:1)

您应该使用其他时的标题复选框。选项,如果您的csv包含标题。

您也应检查已导入的表,它们可能包含标题行。

答案 1 :(得分:0)

使用复制命令的HEADER选项使其忽略第一行

http://www.postgresql.org/docs/current/static/sql-copy.html

enter image description here