我想从本地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等)?
答案 0 :(得分:2)
只需定义列 - here is DOC:
copy trajectory (lat, lon) from my directory\20081023025304.plt delimiter ',' csv;