Как я могу сделать дамп только структуры таблицы в PostgreSQL?

Ответы:

51

pg_dump --schema-only

jldugger
источник
легче, чем я думал, это будет :)
Уоррен
3
Честно говоря, я не особо разбираюсь в администрировании postgres, но я смотрел видео с pgcon 09, и кто-то упомянул pg_dump.
Jldugger
в любом случае - это то, что мне нужно :)
Уоррен
7
@ Warren: это даже проще pg_dump -s.
hans0l0
6

Если вы хотите только CREATE TABLEзаявления, то вы можете сделатьpg_dump -s databasename | awk 'RS="";/CREATE TABLE[^;]*;/'

arod
источник
4
Не уверен, почему отрицательные голоса, так как эта команда работает отлично. Так что +1 от меня.
Дейв
4
Это был точный ответ для меня, потому что я не мог создать файл с функциями, представлениями и т. Д.
Натан Медейрос
@ Дэйв, потому что добавление дополнительной опции, не связанной с первоначальным вопросом 6 лет спустя, не так уж полезно.
Арне
1
@Arne. Не согласен. Заголовок вопроса, который задает дамп «только структура таблицы», дает этой странице высокий рейтинг поиска. И многие люди, такие как Натан, который заметил до вас, хотят избежать перемещения функций и / или представлений из старых расширений, если они начинают с новой базы данных с обновленными расширениями. Так что это абсолютно «полезно», а не «не полезно», которые являются критериями голосования. Абсолютно получить мой +1.
Элробис
@ Dave. Я думаю, что этот ответ правильный. Я открыл, потому что название. Я ищу только дамп структуры таблицы. Это лучше, чем другие, или название не насыщено.
Эмилио Платцер