他のバージョンの文書 15 | 14 | 13 | 12 | 11 | 10 | 9.6 | 9.5 | 9.4 | 9.3 | 9.2 | 9.1 | 9.0 | 8.4 | 8.3 | 8.2 | 8.1 | 8.0 | 7.4 | 7.3 | 7.2

第50章 システムカタログ

目次

50.1. 概要
50.2. pg_aggregate
50.3. pg_am
50.4. pg_amop
50.5. pg_amproc
50.6. pg_attrdef
50.7. pg_attribute
50.8. pg_authid
50.9. pg_auth_members
50.10. pg_cast
50.11. pg_class
50.12. pg_collation
50.13. pg_constraint
50.14. pg_conversion
50.15. pg_database
50.16. pg_db_role_setting
50.17. pg_default_acl
50.18. pg_depend
50.19. pg_description
50.20. pg_enum
50.21. pg_event_trigger
50.22. pg_extension
50.23. pg_foreign_data_wrapper
50.24. pg_foreign_server
50.25. pg_foreign_table
50.26. pg_index
50.27. pg_inherits
50.28. pg_init_privs
50.29. pg_language
50.30. pg_largeobject
50.31. pg_largeobject_metadata
50.32. pg_namespace
50.33. pg_opclass
50.34. pg_operator
50.35. pg_opfamily
50.36. pg_pltemplate
50.37. pg_policy
50.38. pg_proc
50.39. pg_range
50.40. pg_replication_origin
50.41. pg_rewrite
50.42. pg_seclabel
50.43. pg_shdepend
50.44. pg_shdescription
50.45. pg_shseclabel
50.46. pg_statistic
50.47. pg_tablespace
50.48. pg_transform
50.49. pg_trigger
50.50. pg_ts_config
50.51. pg_ts_config_map
50.52. pg_ts_dict
50.53. pg_ts_parser
50.54. pg_ts_template
50.55. pg_type
50.56. pg_user_mapping
50.57. システムビュー
50.58. pg_available_extensions
50.59. pg_available_extension_versions
50.60. pg_config
50.61. pg_cursors
50.62. pg_file_settings
50.63. pg_group
50.64. pg_indexes
50.65. pg_locks
50.66. pg_matviews
50.67. pg_policies
50.68. pg_prepared_statements
50.69. pg_prepared_xacts
50.70. pg_replication_origin_status
50.71. pg_replication_slots
50.72. pg_roles
50.73. pg_rules
50.74. pg_seclabels
50.75. pg_settings
50.76. pg_shadow
50.77. pg_stats
50.78. pg_tables
50.79. pg_timezone_abbrevs
50.80. pg_timezone_names
50.81. pg_user
50.82. pg_user_mappings
50.83. pg_views

システムカタログとは、リレーショナルデータベース管理システムがテーブルや列の情報などのスキーマメタデータと内部的な情報を格納する場所です。 PostgreSQLのシステムカタログは通常のテーブルです。 テーブルを削除したり再作成したり、列の追加および値の挿入や更新をすることは可能ですが、これらの操作でデータベースシステムを台なしにしてしまう可能性もあります。 通常手作業でシステムカタログを変更してはいけません。 その代わりとしてSQLコマンドを使用します(例えばCREATE DATABASEによりpg_databaseカタログに1行挿入し、ディスク上にデータベースを実際に作成します)。 しかし特に難易度の高い操作の時などの例外がありますが、それらの多くは時間と共にSQLコマンドとして利用可能となっており、それゆえシステムカタログを直接操作する必要は無くなってきています。