Гость
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Получение перечня таблиц и их полей с описаниями в PostgrSQL / 6 сообщений из 6, страница 1 из 1
21.04.2020, 21:27
    #39949677
NatM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение перечня таблиц и их полей с описаниями в PostgrSQL
Как можно получить SQL-запросом перечень всех таблиц схемы и их полей с описаниями в PostgrSQL?

Прилагается Книга5.xlsm с примером вывода данных. То же самое нужно получить sql-запросом.

Нашла что-то подобное, но объединить в один запрос не получается, чтобы формировалось такое же представление, как в файле Книга5:

https://stackoverflow.com/questions/5664094/getting-list-of-table-comments-in-postgresql
http://drmiller-developer.blogspot.com/2012/08/postgresql.html
...
Рейтинг: 0 / 0
22.04.2020, 11:46
    #39949925
Guzya
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение перечня таблиц и их полей с описаниями в PostgrSQL
Подключитесь ч\з psql к бд, выполните в консоле

Код: sql
1.
\set ECHO_HIDDEN on



После этого начинайте смотреть интересующие Вас "информационные команды" (\d, \ds, ...).
...
Рейтинг: 0 / 0
22.04.2020, 20:16
    #39950171
NatM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение перечня таблиц и их полей с описаниями в PostgrSQL
Guzya, спасибо!
Но как это вывести на русском корректно и как сохранить в Excel?
Скриншот прилагается.


Как можно сделать sql-запросом представление, как в приложенном выше файле Книга5?
...
Рейтинг: 0 / 0
22.04.2020, 22:17
    #39950212
NatM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение перечня таблиц и их полей с описаниями в PostgrSQL
Мой вопрос отпал, написала такой запрос sql.
...
Рейтинг: 0 / 0
22.04.2020, 23:12
    #39950236
Guzya
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение перечня таблиц и их полей с описаниями в PostgrSQL
NatM, самое важное это

Код: sql
1.
\set ECHO_HIDDEN on



тогда Вам будет выводится запрос, которым получается этот результат.


Код: 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.
30.
31.
postgres=# \c demo
You are now connected to database "demo" as user "postgres".
demo=# \set ECHO_HIDDEN on
demo=# \dt+
********* QUERY **********
SELECT n.nspname as "Schema",
  c.relname as "Name",
  CASE c.relkind WHEN 'r' THEN 'table' WHEN 'v' THEN 'view' WHEN 'm' THEN 'materialized view' 
  WHEN 'i' THEN 'index' WHEN 'S' THEN 'sequence'
  WHEN 's' THEN 'special' WHEN 'f' THEN 'foreign table' WHEN 'p' THEN 'partitioned table' 
  WHEN 'I' THEN 'partitioned index' END as "Type",
  pg_catalog.pg_get_userbyid(c.relowner) as "Owner",
  pg_catalog.pg_size_pretty(pg_catalog.pg_table_size(c.oid)) as "Size",
  pg_catalog.obj_description(c.oid, 'pg_class') as "Description"
FROM pg_catalog.pg_class c
     LEFT JOIN pg_catalog.pg_namespace n ON n.oid = c.relnamespace
WHERE c.relkind IN ('r','p','')
      AND n.nspname <> 'pg_catalog'
      AND n.nspname <> 'information_schema'
      AND n.nspname !~ '^pg_toast'
  AND pg_catalog.pg_table_is_visible(c.oid)
ORDER BY 1,2;
**************************

                                         List of relations
  Schema  |            Name            | Type  |  Owner   |    Size    |        Description        
----------+----------------------------+-------+----------+------------+---------------------------
 bookings | aircrafts_data             | table | postgres | 16 kB      | Aircrafts (internal data)
 bookings | airports_data              | table | postgres | 56 kB      | Airports (internal data)


...
Рейтинг: 0 / 0
27.04.2020, 09:22
    #39951837
NatM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение перечня таблиц и их полей с описаниями в PostgrSQL
Guzya, спасибо большое! Универсальное решение.

Я также написала немного другой запрос к таблицам pg_class, pg_description и comments получилось вывести.
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Получение перечня таблиц и их полей с описаниями в PostgrSQL / 6 сообщений из 6, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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