Создать дамп схемы в правильном представлении - PullRequest
0 голосов
/ 19 июня 2019

Я создал таблицу с этим DDL:

CREATE TABLE a(
    id integer PRIMARY KEY
);

Я сбросил схему.Содержимое дампа выглядит примерно так:

CREATE TABLE a(
    id integer
);

ALTER TABLE a ADD CONSTRAINT a_pkey PRIMARY KEY (id);

Вопрос в том, как создать дамп базы данных в том же виде, в котором я выполнял операторы?

Я имею в виду, как я могуполучить дамп с содержанием вроде:

CREATE TABLE a(
    id integer PRIMARY KEY
);

1 Ответ

0 голосов
/ 19 июня 2019

Вы не можете, и это по замыслу.

Если таблица содержит данные, они загружаются между двумя утверждениями, которые вы цитируете, для достижения максимальной производительности.

Кроме того, существует много способов создания этой таблицы, например

CREATE TABLE a (
   id integer,
   CONSTRAINT a_pkey PRIMARY KEY (id)
);

PostgreSQL не записывает оператор, который использовался для создания таблицы.

Интересно, зачем тебе это вообще нужно. Операторы из дампа создают таблицу точно так же, как и ваш отдельный оператор.

...