Як я можу зробити дамп лише структури таблиці в PostgreSQL?


Відповіді:


51

pg_dump --schema-only


простіше, ніж я зрозумів, що це буде :)
warren

3
Чесно кажучи, я не дуже розумію адміністрацію postgres, але я дивився відео з pgcon 09 і хтось згадав pg_dump.
jldugger

в будь-якому випадку - це те, що мені було потрібно :)
warren

7
@warren: це ще простіше: pg_dump -s.
hans0l0

6

Якщо ви хочете лише CREATE TABLEтвердження, то можете зробитиpg_dump -s databasename | awk 'RS="";/CREATE TABLE[^;]*;/'


4
Не впевнений, чому голоси, як ця команда працює бездоганно. Тож +1 від мене.
Дейв

4
Це був Rigth відповідь на мене, тому що я не міг створити файл з функціями, поданням і т.д.
Натан Medeiros

@Dave, тому що додавання додаткової опції, яка зовсім не пов’язана з початковим запитанням через 6 років, не так корисна.
Арн

1
@Arne. Не погоджуюсь. Заголовок питання, який визначає демпінг "лише структури таблиці", дає цій сторінці високий рейтинг пошуку. І багато людей, як, наприклад, Натан, які зауважили до вас, хочуть уникати переміщення функцій та / або поглядів із старих розширень у випадку, якщо вони починають із нового DB із оновленими розширеннями. Тож це абсолютно "корисно", на відміну від "не корисного", що є критеріями голосування. Абсолютно отримую +1.
elrobis

@Dave. Я думаю, що ця відповідь правильна. Я відкрив тому, що назва. Я шукаю дамп для структури лише для таблиці. Це краще, ніж інше, або заголовок не звучить.
Еміліо Платцер
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.