Экспорт таблицы в csv на postgres

Как экспортировать таблицу в .csv в Postgres, когда я не суперпользователь и не могу использовать команду copy?

Я могу по-прежнему импортировать данные в postgres с кнопкой "импорт" по правому клику, но без опции экспорта.

Ответы

Ответ 1

Использовать psql и перенаправить поток в файл:

psql -U <USER> -d <DB_NAME> -c "COPY <YOUR_TABLE> TO stdout DELIMITER ',' CSV HEADER;" > file.csv

Ответ 2

COPY your_table TO '/path/to/your/file.csv' DELIMITER ',' CSV HEADER;

Для получения более подробной информации перейдите к руководству

Ответ 3

Кроме того, что marvinorez предлагает в его ответе, вы можете сделать, от psql:

\copy your_table TO '/path/to/your/file.csv' DELIMITER ',' CSV HEADER

С другой стороны, из pgadmin3 вы также можете открыть таблицу, щелкнув ее правой кнопкой мыши, а затем выбрав "Просмотр данных". Затем вы можете щелкнуть по верхнему левому углу таблицы (где строка имени столбца соединяется с столбцом номера строки, серым пустым квадратом), чтобы выбрать все строки. Наконец, вы можете скопировать с помощью Ctrl C или Edit → Copy в меню. Данные будут скопированы в буфер обмена в формате csv, разделенных точкой с запятой ;. Затем вы можете вставить его в LibreOffice Calc, MS Excel, чтобы отобразить, например.

Если ваша таблица большая (большая часть зависит от объема оперативной памяти вашего компьютера, между прочим), она может не вписаться в буфер обмена, поэтому в этом случае я бы не использовал этот метод, кроме первого (\копия).

Ответ 4

Самый простой способ - это, по-моему, КОПИРОВАТЬ. Если вы не можете это сделать, как насчет использования pg_dump, а затем преобразовать выходной файл с sed, AWK или даже текстовым редактором? Это должно работать даже при поиске и замене в приемлемое время:)

Ответ 5

У меня возникли проблемы с суперпользователем и запуском psql, я использовал простой глупый способ, используя PGAdmin III.
1) SELECT * FROM;
 Перед запуском выберите "Запрос" в строке меню и выберите "Запрос в файл",  Это сохранит его в папку по вашему выбору. Возможно, придется играть с настройками о том, как экспортировать, ему нравится цитирование и. 2) SELECT * FROM;
выполните нормально, а затем сохраните вывод, выбрав экспорт в меню "Файл". Это будет сохраняться как .csv

Это не подходит для больших таблиц. Таблицы, которые я сделал для этого, составляют несколько 100 000 строк и 10-30 столбцов. У больших таблиц могут быть проблемы.