Импорт csv со значением json с помощью psql COPY (проблема с экранированием) - PullRequest
0 голосов
/ 18 сентября 2018

Я пытаюсь импортировать CSV-файл в таблицу в postgres с помощью команды COPY. У меня проблема, что один столбец имеет тип данных JSON. Я пытался экранировать данные json в csv, используя доллары ($$ ... $$) document_4.1.2.2 . Это первая строка CSV:

3f382d8c-bd27-4092-bd9c-8b50e24df7ec;370038757|PRIMARY_RESIDENTIAL;$${"CustomerData": "{}", "PersonModule": "{}"}$$

Эта команда используется для импорта:

 psql -c "COPY table(id, name, details) FROM '/path/table.csv' DELIMITER ';' ENCODING 'UTF-8' CSV;"

Это ошибка, которую я получаю:

ERROR:  invalid input syntax for type json
DETAIL:  Token "$" is invalid.
CONTEXT:  JSON data, line 1: $...
COPY table, line 1, column details: "$${CustomerData: {}, PersonModule: {}}$$"

Как мне выбрать / импортировать значение json, используя COPY? Должен ли я сдаться и использовать что-то вроде pg_loader вместо этого? Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...