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