Проблема при чтении из CSV-файла в postgresql

#postgresql #csv

#postgresql #csv

Вопрос:

У меня проблема, когда я хочу скопировать данные из csv-файла в базу данных postgresql. Я следую инструкциям из:https://github.com/gregrahn/join-order-benchmark и все работает нормально, пока я не должен прочитать данные из файла csv. Я пишу следующую команду:

 imdbload=# copy aka_name FROM 'PATH/aka_name.csv' DELIMITER ',' CSV
  

И я получаю ту же ошибку с:

 imdbload=# copy aka_name FROM 'PATH/aka_name.csv' CSV
  

И получаем следующую ошибку:

 > ERROR:  extra data after last expected column
CONTEXT:  COPY aka_name, line 126725: "25636,67744,"Atkinson, Chaz 'We'll Sail Without 'em"",,A3252,C2424,,edfa0800ce7af314e22581f2cd102d0..."
imdbload=# 
  

Кто-нибудь знает, что может быть не так?

Комментарии:

1. Обычно это происходит, когда имеется несоответствие между количеством полей данных в файле CSV и количеством полей в таблице. Итак, какова структура таблицы и какова структура файла?

2. Это также может произойти, если существует проблема с разделителем / кавычками, которая разбивает поле из файла более чем на один столбец.

Ответ №1:

Это вызвано «. Вы должны указать escape следующим образом:

 copy aka_name from 'aka_name.csv' csv escape '';