database - Postgresql 复制 CSV 错误 : extra data after last expected column

标签 database postgresql csv

我正在尝试从 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/

相关文章:

php - 为什么会出现这些php session_start()错误?

java - 为什么 JDBC 驱动程序将准备好的语句保持在连接级别?

java - 用Java制作一个简单的CSV文件

mysql - 添加复合主键删除索引

php - 网站的 salesforce.com 插件

mysql - 在 ruby​​ on Rails 中有效连接 JSON 列类型

postgresql - 多单元多属性数据库设计

python - 在生产中将复合主键添加到辅助关联表

python - 从 pandas 读取 csv 时如何删除双引号?

powershell - 整理CSV列不起作用