O catálogo pg_attrdef armazena expressões de valor padrão e expressões de geração de colunas. As principais informações sobre colunas são armazenadas em pg_attribute. Apenas as colunas para as quais uma expressão padrão ou uma expressão de geração tenha sido explicitamente definida têm entrada aqui.
Tabela 52.6. Colunas de pg_attrdef
Coluna Tipo de dados Descrição |
|---|
Identificador da linha |
A tabela à qual esta coluna pertence |
O número da coluna |
O valor padrão da coluna ou a expressão de geração, na
representação |
Exemplo 52.3. Exemplo do tradutor
Valores padrão de coluna
Uso do catálogo pg_attrdef para mostrar os valores padrão de coluna definidos para a usuária cristina.
cristina=> SELECT a.oid, c.relname, t.attname, cristina-> pg_get_expr(adbin, adrelid) cristina-> FROM pg_attrdef AS a cristina-> LEFT JOIN pg_class AS c cristina-> ON adrelid = c.oid cristina-> LEFT JOIN pg_attribute AS t cristina-> ON a.adrelid = t.attrelid AND a.adnum=t.attnum\gx
-[ RECORD 1 ]-----------------------------------
oid | 34250
relname | pessoa
attname | peso_pound
pg_get_expr | (peso_kg * 2.20462262185)
-[ RECORD 2 ]-----------------------------------
oid | 34249
relname | pessoa
attname | altura_inch
pg_get_expr | (altura_cm / 2.54)
-[ RECORD 3 ]-----------------------------------
oid | 34248
relname | pessoa
attname | id
pg_get_expr | nextval('pessoa_id_seq'::regclass)
-[ RECORD 4 ]-----------------------------------
oid | 34291
relname | bug
attname | id
pg_get_expr | nextval('bug_id_seq'::regclass)