powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Автоматизация описания структур таблиц.
5 сообщений из 5, страница 1 из 1
Автоматизация описания структур таблиц.
    #34073827
opexob
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это пригодится многим.
Ниже представлен запрос, выводящий реальную структуру таблиц.

WHERE...LIKE... из запроса надо вырезать (просто у нас для удобства работы с объектами все наименования унифицированы - таблицы начинаются с "tb_", вьюхи c "v_"...)

----------------------------------------------------------------
SELECT
information_schema.columns.table_name,
information_schema.columns.column_name,
information_schema.columns.ordinal_position,
information_schema.columns.column_default,
information_schema.columns.is_nullable,
information_schema.columns.data_type,
information_schema.columns.character_maximum_length,
information_schema.columns.character_octet_length,
information_schema.columns.numeric_precision,
information_schema.columns.numeric_precision_radix,
information_schema.columns.numeric_scale,
information_schema.columns.datetime_precision,
information_schema.columns.udt_name
FROM
information_schema.columns
WHERE
(information_schema.columns.table_name LIKE 'tb_%')
ORDER BY
information_schema.columns.table_name,
information_schema.columns.ordinal_position
----------------------------------------------------------------

Все поля таблиц сопровождены комментариями , как то:
...
COMMENT ON COLUMN tb_proizv.proizv_www IS 'http:// адрес сайта производителя';
COMMENT ON COLUMN tb_edizm.edizm_id IS 'Идентификатор единиц измерений';
COMMENT ON COLUMN tb_menu.menu_hotkey IS 'Горячая клавиша';
...

Для полноты выборки не хватает одного поля - COMMENT !!!

Ребята, подсобите, пожалуйста, подцепить в запрос недостающее поле 'COMMENT'.
...
Рейтинг: 0 / 0
Автоматизация описания структур таблиц.
    #34073999
.gc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
.gc
Гость
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
CREATE OR REPLACE VIEW table_description AS
SELECT
information_schema.columns.table_schema,
information_schema.columns.table_name,
information_schema.columns.column_name,
information_schema.columns.ordinal_position,
information_schema.columns.column_default,
information_schema.columns.is_nullable,
information_schema.columns.data_type,
information_schema.columns.character_maximum_length,
information_schema.columns.character_octet_length,
information_schema.columns.numeric_precision,
information_schema.columns.numeric_precision_radix,
information_schema.columns.numeric_scale,
information_schema.columns.datetime_precision,
information_schema.columns.udt_name
FROM
information_schema.columns;

create or replace view column_description as
select nspname as table_schema, relname as table_name , attname as column_name, col_description(c.oid, a.attnum) as column_description
from pg_catalog.pg_class c
join pg_catalog.pg_attribute a on (c.oid = a.attrelid)
join pg_catalog.pg_namespace n on (n.oid = c.relnamespace)
where a.attnum >  0  and not a.attisdropped and c.relkind in ('v', 'r');

select *
from table_description join column_description using (table_schema, table_name, column_name)
ORDER BY table_name, ordinal_position;

как-то так, примерно.
...
Рейтинг: 0 / 0
Автоматизация описания структур таблиц.
    #34074155
opexob
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
.gc
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
select nspname as table_schema, relname as table_name , attname as column_name, col_description(c.oid, a.attnum) as column_description
from pg_catalog.pg_class c
join pg_catalog.pg_attribute a on (c.oid = a.attrelid)
join pg_catalog.pg_namespace n on (n.oid = c.relnamespace)
where a.attnum >  0  and not a.attisdropped and c.relkind in ('v', 'r');
/*
select *
from table_description join column_description using (table_schema, table_name, column_name)
ORDER BY table_name, ordinal_position;
*/

как-то так, примерно.

.gs, cпасибо !!!
...
Рейтинг: 0 / 0
Автоматизация описания структур таблиц.
    #34074713
valera_k2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может
Код: plaintext
COL_DESCRIPTION()
лучше подойдет?
...
Рейтинг: 0 / 0
Автоматизация описания структур таблиц.
    #34075247
valera_k2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
извиняюсь не заметил что уже было
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Автоматизация описания структур таблиц.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]