我尝试将CSV文件的内容复制到我的postgresql数据库中,我收到此错误“在最后一个预期列之后的额外数据”。
我的CSV内容是
agency_id,agency_name,agency_url,agency_timezone,agency_lang,agency_phone 100,RATP (100),http://www.ratp.fr/,CET,
我的postgresql命令是
COPY agency (agency_name,agency_timezone) FROM 'myFile.txt' CSV HEADER DELIMITER ',';
这是我的桌子
CREATE TABLE agency ( agency_id character varying,agency_name character varying NOT NULL,agency_url character varying NOT NULL,agency_timezone character varying NOT NULL,agency_lang character varying,agency_phone character varying,agency_fare_url character varying ); Column | Type | Modifiers -----------------+-------------------+----------- agency_id | character varying | agency_name | character varying | not null agency_url | character varying | not null agency_timezone | character varying | not null agency_lang | character varying | agency_phone | character varying | agency_fare_url | character varying |
现在你有7个字段。
您需要将CSV中的这6个字段映射到表中的6个字段中。
当你拥有它时,你不能只从csv中映射3个字段,就像你一样:
\COPY agency (agency_name,';
csv文件中的所有字段都需要在命令副本中映射。
既然你定义了csv,分隔符是默认的,你不需要把它。