我对postgres相当新鲜。我正在尝试将文件从我的计算机复制到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
答案 0 :(得分:2)
您必须使用HEADER true
告诉COPY跳过标题行。