Я запускаю PSQL экспорта в файлы CSV для нескольких таблиц. Они выглядят следующим образом:
COPY table_name TO 'file_name' CSV
Проблема заключается в том, что некоторые из этих таблиц имеют поля text
, в которых значения этих полей содержат как разделитель (запятые), так и переводы строк. Как лучше всего выполнить экспорт, удаляя символы новой строки во всех столбцах?
Пример таблицы:
field1,field2,field3,field4
field1,field2,"field3, with, the delimiter",field4
field1,field2,"field3, with, the
delimiter and newline",field4
field1,"field2 with a
newline",field3,field4
Как бы выглядел мой экспорт:
field1,field2,field3,field4
field1,field2,"field3, with, the delimiter",field4
field1,field2,"field3, with, the delimiter and newline",field4
field1,"field2 with a newline",field3,field4
Некоторые решения, которые я рассматривал:
- Напишите пользовательскую функцию замены регулярных выражений и обновите таблицы перед выполнением экспорта.
- Проверьте, есть ли способ выполнить замену во время транзакции экспорта (возможно ли это?).
- Выполните экспорт как есть и используйте другую библиотеку / язык для последующей обработки экспортированного файла CSV.
Спасибо за помощь!