0
我對postgres相當陌生。我正在嘗試將文件從我的電腦複製到postgres服務器。我首先初始化表將CSV上傳到Postgres時輸入語法無效
CREATE TABLE coredb (
id text, lng numeric(6,4), lat numeric(6,4),
score1 numeric(5,4), score2 numeric(5,4));
我的CSV看起來是這樣的:
ID lng lat score1 score2
1 -72.298 43.218 0.561 0.894
2 -72.298 43.218 0.472 0.970
3 -72.285 43.250 0.322 0.959
4 -72.285 43.250 0.370 0.934
5 -72.325 43.173 0.099 0.976
6 -72.325 43.173 0.099 0.985
然而,當我嘗試將CSV拷貝過來,我收到以下錯誤
COPY coredb FROM '/home/usr/Documents/filefordb.csv' DELIMITER ',' CSV;
ERROR: invalid input syntax for type numeric: "lng"
CONTEXT: COPY nhcore, line 1, column lng: "lng"
奇怪的是,當我將CREATE TABLE
參數設置爲所有列的文本時,csv導入就好了。有人可以解釋爲什麼發生這種情況?我正在使用psql 9.4.1
你確定你的CSV看起來像這樣嗎?這裏面沒有逗號。它看起來像你需要改變你的'DELIMITER',''更好的東西,並使用'WITH HEADER true'選項 – vol7ron