企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
# Chapter 34\. 信息模式 **Table of Contents** + 34.1\. 关于这个模式 + 34.2\. 数据类型 + 34.3\. `information_schema_catalog_name` + 34.4\. `administrable_role_authorizations` + 34.5\. `applicable_roles` + 34.6\. `attributes` + 34.7\. `character_sets` + 34.8\. `check_constraint_routine_usage` + 34.9\. `check_constraints` + 34.10\. `collations` + 34.11\. `collation_character_set_applicability` + 34.12\. `column_domain_usage` + 34.13\. `column_options` + 34.14\. `column_privileges` + 34.15\. `column_udt_usage` + 34.16\. `columns` + 34.17\. `constraint_column_usage` + 34.18\. `constraint_table_usage` + 34.19\. `data_type_privileges` + 34.20\. `domain_constraints` + 34.21\. `domain_udt_usage` + 34.22\. `domains` + 34.23\. `element_types` + 34.24\. `enabled_roles` + 34.25\. `foreign_data_wrapper_options` + 34.26\. `foreign_data_wrappers` + 34.27\. `foreign_server_options` + 34.28\. `foreign_servers` + 34.29\. `foreign_table_options` + 34.30\. `foreign_tables` + 34.31\. `key_column_usage` + 34.32\. `parameters` + 34.33\. `referential_constraints` + 34.34\. `role_column_grants` + 34.35\. `role_routine_grants` + 34.36\. `role_table_grants` + 34.37\. `role_udt_grants` + 34.38\. `role_usage_grants` + 34.39\. `routine_privileges` + 34.40\. `routines` + 34.41\. `schemata` + 34.42\. `sequences` + 34.43\. `sql_features` + 34.44\. `sql_implementation_info` + 34.45\. `sql_languages` + 34.46\. `sql_packages` + 34.47\. `sql_parts` + 34.48\. `sql_sizing` + 34.49\. `sql_sizing_profiles` + 34.50\. `table_constraints` + 34.51\. `table_privileges` + 34.52\. `tables` + 34.53\. `triggered_update_columns` + 34.54\. `triggers` + 34.55\. `udt_privileges` + 34.56\. `usage_privileges` + 34.57\. `user_defined_types` + 34.58\. `user_mapping_options` + 34.59\. `user_mappings` + 34.60\. `view_column_usage` + 34.61\. `view_routine_usage` + 34.62\. `view_table_usage` + 34.63\. `views` 信息模式由一组视图组成,它们包含有关当前数据库里定义的对象的信息。 信息模式是 SQL 标准里定义的,因此可以认为是可以移植的,并且是相对稳定的— 和系统表不一样,系统表是PostgreSQL特有的, 是在实现的基础上进行建模的。但信息模式视图不包含有关PostgreSQL 特有的特性的信息;你可以查询系统表或者其它PostgreSQL 特定的视图查询它。 > **Note:** 当查询数据库约束信息时,一个标准兼容的查询有可能返回一到多行。 这是因为在一个模式中SQL标准查询约束名是唯一的,但是PostgreSQL 并不强制这个约束。PostgreSQL 自动产生约束名避免在同一个模式中重复,但是用户可以指定重复的名字。 > > 当查询信息模式视图(如`check_constraint_routine_usage`, `check_constraints`, `domain_constraints`,和 `referential_constraints`)时会出现这样的问题。 一些其他视图有相似的问题,但是包含表明以帮助辨别重复的行, 例如`constraint_column_usage`, `constraint_table_usage`, `table_constraints`。