第 43章システムカタログ

目次
43.1. 概要
43.2. pg_aggregate
43.3. pg_am
43.4. pg_amop
43.5. pg_amproc
43.6. pg_attrdef
43.7. pg_attribute
43.8. pg_authid
43.9. pg_auth_members
43.10. pg_autovacuum
43.11. pg_cast
43.12. pg_class
43.13. pg_constraint
43.14. pg_conversion
43.15. pg_database
43.16. pg_depend
43.17. pg_description
43.18. pg_index
43.19. pg_inherits
43.20. pg_language
43.21. pg_largeobject
43.22. pg_listener
43.23. pg_namespace
43.24. pg_opclass
43.25. pg_operator
43.26. pg_pltemplate
43.27. pg_proc
43.28. pg_rewrite
43.29. pg_shdepend
43.30. pg_shdescription
43.31. pg_statistic
43.32. pg_tablespace
43.33. pg_trigger
43.34. pg_type
43.35. システムビュー
43.36. pg_cursors
43.37. pg_group
43.38. pg_indexes
43.39. pg_locks
43.40. pg_prepared_statements
43.41. pg_prepared_xacts
43.42. pg_roles
43.43. pg_rules
43.44. pg_settings
43.45. pg_shadow
43.46. pg_stats
43.47. pg_tables
43.48. pg_timezone_abbrevs
43.49. pg_timezone_names
43.50. pg_user
43.51. pg_views

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