2015-02-08 76 views
0

我想從本地CSV文件導入一些數據到Postgres數據庫。我的SQL:從文件導入時sql自動生成的id

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" 

的主要問題是我肯定需要ID DB中的列,但CSV文件不包含它。如何在導入數據時添加自動生成的ID(我的意思是第一行ID = 1,第二行ID = 2等)?

回答

2

只要定義列 - here is DOC

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