50.57. Системные представления
В дополнение к системным каталогам, в PostgreSQL есть набор встроенных представлений. Некоторые системные представления содержат в себе некоторые популярные запросы к системным каталогам, а другие дают доступ к внутреннему состоянию сервера.
Информационная схема (см. Главу 35) содержит другой набор представлений, пересекающихся по функциональности с системными представлениям. Так как информационная схема соответствует стандарту SQL, тогда как описанные здесь представления свойственны только для PostgreSQL, обычно лучше использовать информационную схему, если через неё можно получить всю требуемую информацию.
В Таблице 50.58 перечислены описываемые здесь системные представления. Подробное описание каждого представления следует далее. Есть также дополнительные представления, дающие доступ к результатам работы сборщика статистики; они перечисляются в Таблице 28.2.
Кроме явно отмеченных исключений, все описанные здесь представления доступны только для чтения.
Таблица 50.58. Системные представления
| Имя представления | Предназначение |
|---|---|
pg_available_extensions | доступные расширения |
pg_available_extension_versions | доступные версии расширений |
pg_config | параметры конфигурации времени компиляции |
pg_cursors | открытые курсоры |
pg_file_settings | сводка содержимого файла конфигурации |
pg_group | группы пользователей баз данных |
pg_indexes | индексы |
pg_locks | блокировки, установленные или ожидаемые в данный момент |
pg_matviews | материализованные представления |
pg_policies | policies |
pg_prepared_statements | подготовленные операторы |
pg_prepared_xacts | подготовленные транзакции |
pg_replication_origin_status | информация об источниках репликации, включая данные прогресса репликации |
pg_replication_slots | информация о слотах репликации |
pg_roles | роли баз данных |
pg_rules | правила |
pg_seclabels | метки безопасности |
pg_settings | значения параметров |
pg_shadow | пользователи базы данных |
pg_stats | статистика планировщика |
pg_tables | таблицы |
pg_timezone_abbrevs | аббревиатуры часовых поясов |
pg_timezone_names | имена часовых поясов |
pg_user | пользователи базы данных |
pg_user_mappings | сопоставления пользователей |
pg_views | представления |
50.57. System Views
In addition to the system catalogs, PostgreSQL provides a number of built-in views. Some system views provide convenient access to some commonly used queries on the system catalogs. Other views provide access to internal server state.
The information schema (Chapter 35) provides an alternative set of views which overlap the functionality of the system views. Since the information schema is SQL-standard whereas the views described here are PostgreSQL-specific, it's usually better to use the information schema if it provides all the information you need.
Table 50.58 lists the system views described here. More detailed documentation of each view follows below. There are some additional views that provide access to the results of the statistics collector; they are described in Table 28.2.
Except where noted, all the views described here are read-only.
Table 50.58. System Views
| View Name | Purpose |
|---|---|
pg_available_extensions | available extensions |
pg_available_extension_versions | available versions of extensions |
pg_config | compile-time configuration parameters |
pg_cursors | open cursors |
pg_file_settings | summary of configuration file contents |
pg_group | groups of database users |
pg_indexes | indexes |
pg_locks | locks currently held or awaited |
pg_matviews | materialized views |
pg_policies | policies |
pg_prepared_statements | prepared statements |
pg_prepared_xacts | prepared transactions |
pg_replication_origin_status | information about replication origins, including replication progress |
pg_replication_slots | replication slot information |
pg_roles | database roles |
pg_rules | rules |
pg_seclabels | security labels |
pg_settings | parameter settings |
pg_shadow | database users |
pg_stats | planner statistics |
pg_tables | tables |
pg_timezone_abbrevs | time zone abbreviations |
pg_timezone_names | time zone names |
pg_user | database users |
pg_user_mappings | user mappings |
pg_views | views |