Le catalogue pg_attrdef stocke les valeurs par défaut des colonnes. Les informations principales des colonnes sont stockées dans pg_attribute (voir plus loin). Seules les colonnes pour lesquelles une valeur par défaut est explicitement indiquée (quand la table est créée ou quand une colonne est ajoutée) ont une entrée dans pg_attrdef.
Tableau 49.6. Colonnes de pg_attrdef
Nom | Type | Références | Description |
---|---|---|---|
oid | oid | Identifiant de ligne (attribut caché ; doit être sélectionné explicitement) | |
adrelid | oid | pg_class.oid | La table à laquelle appartient la colonne |
adnum | int2 | pg_attribute.attnum | Numéro de la colonne |
adbin | pg_node_tree | Représentation interne de la valeur par défaut de la colonne | |
adsrc | text | Représentation lisible de la valeur par défaut |
Le champ adsrc est historique. Il est préférable de ne pas l'utiliser parce qu'il ne conserve pas de trace des modifications qui peuvent affecter la représentation de la valeur par défaut. La compilation inverse du champ adbin (avec pg_get_expr par exemple) est une meilleure façon d'afficher la valeur par défaut.