Вопрос

В Postgresql нет SHOW CREATE Заявление, известное, например, из MySQL. Но когда вы используете клиентскую программу PGADMIN III и перейдите к деталям объекта, вы видите соответствующий оператор CREAT.

Вот мой вопрос:
Как PGADMIN III строит операторы CREATE, которые показывают? Использует ли он PSQL \d Команда или какой -то совершенно другой API Potresql? Если так, как я могу его использовать?

Это было полезно?

Решение

PGADMIN имеет свою собственную функциональность обратного инженера - он просто исследует системные таблицы, такие как pg_class а также pg_attribute Чтобы найти детали.

Если то, что вы ищете, на самом деле простой способ показать операторы создания ваших объектов, которые вы можете использовать из чего -то другого, вы должны посмотреть на pg_dump Вместо PGADMIN это намного проще. В частности, если вы просто хотите посмотреть на это на один или несколько объектов, вы можете использовать pg_dump -s -t tablename И это даст вам необходимые высказывания создания.

Другие советы

Насколько я знаю, Pgadmin запускает SQL -запросы в каталогах системы, чтобы собрать детали определения таблицы. На основании этой информации она «воссоздает» оператор Create Table.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с dba.stackexchange
scroll top