Какой командой была создана одна таблица в PostgreSQL?
Если вы не создавали базу данных над которой сейчас работаете, то 100% вероятности вам понадобится просматривать все особенности некоторых таблиц.
Вам нужно будет понимать структуру таблицы, какие в ней имеются столбцы, каких они типов, какие в таблице есть ограничения и как они называются. Какие у этой таблицы есть связи с другими таблицами и так далее.
Все эти вопросы приводят к тому, что хотелось бы просто получить SQL-код команды, из-за которой появилась данная таблица.
Сделать это можно через терминальный клиент psql в Debian:
pg_dump -t 'схема_данных.название_твоей_таблицы' --schema-only название_базы_данных
Данная команда выведет в консоль всю необходимую информацию в виде SQL-кода, которым можно создать данную таблицу. Сами данные этой таблицы не будут отображены.
pg_dump -t 'b.t_d_8411' --schema-only sdb
Пример работы:
—
— PostgreSQL database dump
—
— Dumped from database version 11.16 (Debian 11.16-1.pgdg100+1)
— Dumped by pg_dump version 11.16 (Debian 11.16-1.pgdg100+1)
SET statement_timeout = 0;
SET lock_timeout = 0;
SET idle_in_transaction_session_timeout = 0;
SET client_encoding = ‘UTF8’;
SET standard_conforming_strings = on;
SELECT pg_catalog.set_config(‘search_path’, », false);
SET check_function_bodies = false;
SET xmloption = content;
SET client_min_messages = warning;
SET row_security = off;
SET default_tablespace = »;
SET default_with_oids = false;
—
— Name: t_d_8411; Type: TABLE; Schema: b; Owner: postgres
—
CREATE TABLE b.t_d_8411 (
id bigint NOT NULL,
idp bigint NOT NULL,
datecreate timestamp without time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
datecheck timestamp without time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
pagestatus bigint DEFAULT 0
);
ALTER TABLE b.t_d_8411 OWNER TO postgres;
—
— Name: t_d_8411_id_seq; Type: SEQUENCE; Schema: b; Owner: postgres
—
ALTER TABLE b.t_d_8411 ALTER COLUMN id ADD GENERATED ALWAYS AS IDENTITY (
SEQUENCE NAME b.t_d_8411_id_seq
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1
);
—
— Name: t_d_8411 t_d_8411_idp_key; Type: CONSTRAINT; Schema: b; Owner: postgres
—
ALTER TABLE ONLY b.t_d_8411
ADD CONSTRAINT t_d_8411_idp_key UNIQUE (idp);
—
— Name: t_d_8411 t_d_8411_pkey; Type: CONSTRAINT; Schema: b; Owner: postgres
—
ALTER TABLE ONLY b.t_d_8411
ADD CONSTRAINT t_d_8411_pkey PRIMARY KEY (id);
—
— PostgreSQL database dump complete
—
По этому коду уже можно многое понять про данную таблицу. Мы отчётливо видим названия столбцов данной таблицы. Мы понимаем какие типы данных есть у этих столбцов.
Мы видим того пользователя, который назначен владельцем.
Далее отображается информация о последовательностях, которые назначены для данной таблицы.
И после этого отображается информация об ограничениях данной таблицы.
Кроме консоли, мы можем вывести SQL-код таблицы в файл. Для этого нужно добавить угловую скобку (стрелочку) и написать имя файла, в который хотим сбросить:
Данная команда выведет в файл всю необходимую информацию в виде SQL-кода, которым можно создать данную таблицу. Сами данные этой таблицы не будут отображены.
pg_dump -t 'b.t_d_8411' --schema-only sdb > t_d_8411_dump.sql
По умолчанию в Debian файл будет создан в директории:
/var/lib/postgresql
Как ещё можно получить код конфигурации таблицы?
PostgreSQL может иметь графическую оболочку, которая называется pgAdmin 4. Этот инструмент опциональный и не идёт в базовой комплектации с СУБД.
На вкладке SQL в нём можно увидеть состав того или иного объекта базы данных. Для этого выделяете нужный объект в левом меню и вкладка отображает его код конфигурации.
Например;

Информационные ссылки
Официальный сайт WEB-оболочки pgAdmin — https://www.pgadmin.org
Официальный сайт СУБД PostgreSQL — https://www.postgresql.org