pg_attrdef
pg_attrdef
システムカタログは列のデフォルト値を格納します。
列の主要な情報はpg_attribute
に格納されています(下記を参照)。
(テーブルが作成された時、もしくは列が追加された時に)デフォルト値を明示的に特定した列のみここに項目を持ちます。
表49.6 pg_attrdef
の列
名前 | 型 | 参照先 | 説明 |
---|---|---|---|
oid | oid | 行識別子(隠し属性です。明示的に選択しなければなりません) | |
adrelid | oid |
| この列が属するテーブル |
adnum | int2 |
| 列番号 |
adbin | pg_node_tree | 列のデフォルト値の内部表現 | |
adsrc | text | 人間が見てわかるデフォルト値の表現 |
adsrc
フィールドは歴史的なもので使用しない方が良いでしょう。
この値は、デフォルト値の表現に影響を与える外部の変化を追跡しないからです。
デフォルト値を表示するには、(例えばpg_get_expr
を使った)adbin
フィールドの逆コンパイルが、良い方法です。