Sql - PostgreSQL - скидати кожну таблицю в інший файл - Переповнення стека

Мені потрібно витягти SQL-файли з декількох таблиць бази даних PostgreSQL. Це те, що я придумав дотепер:

Однак, як бачите, усі таблиці, які починаються з префікса thr, експортуються до єдиного уніфікованого файлу (db_dump.sql). У мене є майже 90 таблиць для вилучення SQL, тому обов’язково зберігати дані в окремих файлах.

Як я можу це зробити? Спасибі заздалегідь.

4 відповіді 4

Якщо ви із задоволенням кодуєте список таблиць, але просто хочете, щоб кожна була в іншому файлі, ви можете використовувати цикл сценарію оболонки для запуску команди pg_dump кілька разів, замінюючи ім'я таблиці щоразу, коли кругом цикл:

РЕДАГУВАТИ: Цей підхід можна розширити, щоб динамічно отримувати список таблиць, запускаючи запит через psql та подаючи результати у цикл замість жорстко закодованого списку:

Тут psql -t -c "SQL" запускає SQL і видає результати без верхнього або нижнього колонтитула; оскільки вибрано лише один стовпець, у кожному рядку вихідних даних, захоплених $ (команда), буде вказана назва таблиці, і ваша оболонка буде циклічно прокручувати їх по черзі.

кожну