使用带特殊字符的pgadmin将csv文件导入postgres db

时间:2017-05-26 09:21:42

标签: postgresql csv gtfs pgadmin-4

我使用csv将数据从postgres db文件导入pgadmin 4 一切都很好,但是当我尝试导入包含一些像这样的数据

的文件时,我遇到了问题
  

“'Zand,Vlotbrug”

     

“Dussen,”Middeltje“

如您所见,数据包含

  

`

  

'

我还尝试使用utf-8编码导入文件但不能。

任何人都知道如何解决这个问题?

更新

结构:

stop_id,stop_code,stop_name,stop_lat,stop_lon,location_type,parent_station,stop_timezone,wheelchair_boarding,platform_code,zone_id

数据:

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   引用' \"' ESCAPE''';""

UI:

enter image description here

1 个答案:

答案 0 :(得分:0)

从命令行看起来您已将ESCAPE字符定义为单引号。单引号出现在您的数据中,但未进行转义。

默认的ESCAPE字符与QUOTE字符相同。

更多信息here