2017-05-26 358 views
0

我從導入文件csv數據到postgres db使用pgadmin 4 一切都OK,但我得到一個問題,當我嘗試導入包含這樣導入CSV文件向Postgres數據庫使用pgAdmin的有特殊字符

一些數據的文件

「‘t Zand, Vlotbrug」

「Dussen, `t Middeltje」

,你可以看到,數據中包含

`

'

我也試着用utf-8編碼導入文件,但是不能。

任何人都知道如何解決這個問題?

更新

結構:

​​

數據:

stoparea:123953,,"De Zande, 'Koelucht'",52.5184475,5.956368,1,,,0,, 

錯誤:

ERROR: unterminated CSV quoted field 
CONTEXT: COPY stops, line 69400: "stoparea:123953,,"De Zande, 'Koelucht'",52.5184475,5.956368,1,,,0,, 
stoparea:120536,,"Poortvliet, Zu..." 

更新2

命令:

"/Applications/pgAdmin 4.app/Contents/SharedSupport/psql" --command " "\copy transit.stops (stop_id, stop_code, stop_name, stop_lat, stop_lon, location_type, parent_station, stop_timezone, wheelchair_boarding, platform_code, zone_id) FROM '/Users/tvtan/Desktop/gtfs-nl/stops.txt' DELIMITER ',' CSV HEADER QUOTE '\"' ESCAPE '''';""

UI:

enter image description here

+0

它無關UTF8,請給 –

+0

@VaoTsun增加了更多的信息 –

+0

請把列重現的格式你COPY –

回答

0

在命令行中,它看起來像您已經定義了ESCAPE字符,如單引號。單引號出現在您的數據中,但不會被轉義。

默認的ESCAPE字符與QUOTE字符相同。

更多信息here

+0

我不使用命令行,我使用pgadmin的導入用戶界面,並且我嘗試使用單引號設置ESCAPE字符,但仍然錯誤 –

+0

已將換碼字符更改爲引號,並且它現在可用,謝謝@Paul –

相關問題