从文件导入时自动生成sql

时间:2015-02-08 19:43:47

标签: postgresql csv import

我想从本地CSV文件将一些数据导入Postgres数据库。我的SQL:

CREATE TABLE trajectory (
  id          serial,
  lat         varchar(40),
  lon         varchar(40),
);

CSV文件如下所示:

28.218273, 21.12938
...

我的导入条款:

COPY trajectory FROM 'my directory\20081023025304.plt' DELIMITER ',' CSV;

但这会产生错误:

ERROR: invalid input syntax for integer: "39.984702"
SQL state: 22P02
Context: COPY trajectory, line 1, column id: "39.984702"

主要问题是我肯定需要DB中的ID列,但CSV文件不包含它。如何在导入数据时添加自动生成的id(我的意思是第一行ID = 1,第二行ID = 2等)?

1 个答案:

答案 0 :(得分:2)

只需定义列 - here is DOC

copy trajectory (lat, lon) from my directory\20081023025304.plt delimiter ',' csv;