Как Pgadmin III Build создает операторы?
-
16-10-2019 - |
Вопрос
В 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.