我正在尝试从 http://www.unitedstateszipcodes.org/zip-code-database 导入数据.数据的一个子集如下所示:
"zip","type","primary_city","acceptable_cities","unacceptable_cities","state","county","timezone","area_codes","latitude","longitude","world_reg$
"00501","UNIQUE","Holtsville",,"I R S Service Center","NY","Suffolk County","America/New_York","631","40.81","-73.04","NA","US","0","384",
"00544","UNIQUE","Holtsville",,"Irs Service Center","NY","Suffolk County","America/New_York","631","40.81","-73.04","NA","US","0","0"
我运行的 postgresql 命令是这样的:
copy development.zip_codes FROM '/tmp/zip_code_database.csv' WITH DELIMITER ',' CSV HEADER;
结果是这样的:
ERROR: extra data after last expected column
SQL state: 22P04
Context: COPY zip_codes, line 2: ""00501","UNIQUE","Holtsville",,"I R S Service Center","NY","Suffolk County","America/New_York","631"..."
我在导入时做错了什么?
最佳答案
像魅力一样工作,在这里......
DROP TABLE zipcodes CASCADE;
CREATE TABLE zipcodes
( id serial NOT NULL PRIMARY KEY
, zzip varchar NOT NULL UNIQUE
, ztype varchar
, primary_city varchar
, acceptable_cities varchar
, unacceptable_cities varchar
, state varchar
, county varchar
, ztimezone varchar
, area_codes varchar
, latitude varchar
, longitude varchar
, world_region varchar
, country varchar
, decommissioned varchar
, estimated_population varchar
, notes varchar
);
COPY zipcodes (zzip,ztype,primary_city
, acceptable_cities,unacceptable_cities
, state,county,ztimezone,area_codes
, latitude,longitude,world_region,country
, decommissioned,estimated_population,notes )
FROM '/tmp/zip_code_database.csv'
WITH CSV HEADER delimiter ','
;
结果:
DROP TABLE
CREATE TABLE
COPY 42522
(也许 OP 有 CR/CRLF 问题?)
关于database - Postgresql 复制 CSV 错误 : extra data after last expected column,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20301646/