csvファイルをpsql dbにインポートしたい...
https://www.commandprompt.com/ppbook/r23528も参照し、使用した構文は次のとおりです。
copy location from 'file.csv' with delimiters '\t' NULL as 'NULL' CSV;
注:私のcsvファイルは「タブ」で区切られています。
上記のコマンドを 1 回目に実行すると、次のように表示されます。
ERROR: syntax error at or near ""\t""
LINE 1: ...om 'file.csv' using delimiters "\t" ;
そして2回目、
ERROR: syntax error at or near "copy"
LINE 2: copy location from 'file.csv' using d...
編集後、
2回目は、
copy location from 'file.csv' with delimiter E'\t' NULL as 'NULL' CSV;
ERROR: extra data after last expected column
CONTEXT: COPY location, line 1: "AD AD100 Canillo 42.5833 1.6667 6"
私のテーブルの説明は
Table "public.location"
Column | Type | Modifiers
-------------+------------------------+-----------
countrycode | character varying(2) |
postalcode | character varying(20) |
place | character varying(100) |
state | character varying(20) |
country | character varying(100) |
country2 | character varying(20) |
community | character varying(100) |
community2 | character varying(20) |
latitude | double precision |
longitude | double precision |
accuracy | integer |
これを解決するには?
入力:
AD AD100 Canillo 42.5833 1.6667 6
AD AD200 Encamp 42.5333 1.6333 6
AD AD300 Ordino 42.6 1.55 6
AD AD400 La Massana 42.5667 1.4833 6
AD AD500 Andorra la Vella 42.5 1.5 6
AD AD600 Sant Julià de Lòria 42.4667 1.5 6
AD AD700 Escaldes-Engordany 42.5 1.5667 6
AR 3636 "POZO CERCADO (EL CHORRO (F), DPTO. RIVADAVIA (S))" SALTA A -23.4933 -61.9267 3
AR 4123 LAS SALADAS SALTA A -25.7833 -64.5 4
AR 4126 LA MARAVILLA SALTA A -26.0833 -65.263 3
AR 4126 TALA SALTA A -26.1167 -65.2833 4
AR 4126 LA ASUNCION SALTA A -26.0833 -65.263 3
AR 4126 BRETE SALTA A -26.0667 -65.3667 4
AR 4126 EL SUNCHAL SALTA A -26.0833 -65.263 3
AR 4126 CEIBAL SALTA A -26.1 -65.0167 4
AR 4126 BARADERO SALTA A -26.0833 -65.263 3
AR 4126 CANDELARIA SALTA A -26.1 -65.1 4
AR 4126 ALEM SALTA A -26.0833 -65.263 3
AR 4126 EL BRETE SALTA A -26.0667 -65.3667 4
AR 4126 EL CUIBAL SALTA A -26.0833 -65.263 3
AR 4126 EL JARDIN SALTA A -26.0833 -65.3833 4
AR 4126 OVEJERO SALTA A -26.0833 -65.263 3
AR 4126 LOS MOGOTES SALTA A -26.0333 -65.2 4
AR 4126 "MIRAFLORES (TALA, DPTO. CANDELARIA)" SALTA A -26.0833 -65.263 3
これは、たとえば入力用です...
このファイルをms xcelシートで区切りタブで開くと、データが関連する列に正しく分離されます..
タブ値と null 値を含む入力ファイル、
AD\tAD100\tCanillo\t\n\t\n\t\n\t\n\t\n\t\n\t42.5833\t1.6667\t6
AD\tAD200\tEncamp\t\n\t\n\t\n\t\n\t\n\t\n\t42.5333\t1.6333\t6
AR\t3636\t"POZO CERCADO (EL CHORRO (F), DPTO. RIVADAVIA (S))"\tSALTA\tA\t\n\t\n\t\n\t\n\t-23.4933\t-61.9267\t3