52.6. pg_attrdef

The catalog pg_attrdef stores column default values. The main information about columns is stored in pg_attribute (see below). Only columns that explicitly specify a default value (when the table is created or the column is added) will have an entry here.

Table 52.6. pg_attrdef Columns

Name Type References Description
oid oid Row identifier (hidden attribute; must be explicitly selected)
adrelid oid pg_class.oid The table this column belongs to
adnum int2 pg_attribute.attnum The number of the column
adbin pg_node_tree The internal representation of the column default value
adsrc text A human-readable representation of the default value

The adsrc field is historical, and is best not used, because it does not track outside changes that might affect the representation of the default value. Reverse-compiling the adbin field (with pg_get_expr for example) is a better way to display the default value.

© 1996–2019 The PostgreSQL Global Development Group
Licensed under the PostgreSQL License.
https://www.postgresql.org/docs/11/catalog-pg-attrdef.html