HiveBrain v1.2.0
Get Started
← Back to all entries
snippetsqlCritical

How to list all constraints of a table in PostgreSQL?

Submitted by: @import:stackexchange-dba··
0
Viewed 0 times
postgresqlconstraintsallhowlisttable

Problem

How to list all constraints (Primary key, check, unique mutual exclusive, ..) of a table in PostgreSQL?

Solution

Constraints can be retrieved via pg_catalog.pg_constraint.

SELECT con.*
       FROM pg_catalog.pg_constraint con
            INNER JOIN pg_catalog.pg_class rel
                       ON rel.oid = con.conrelid
            INNER JOIN pg_catalog.pg_namespace nsp
                       ON nsp.oid = connamespace
       WHERE nsp.nspname = ''
             AND rel.relname = '';


Replace ` with the name of your schema and ` with the name of your table.

Code Snippets

SELECT con.*
       FROM pg_catalog.pg_constraint con
            INNER JOIN pg_catalog.pg_class rel
                       ON rel.oid = con.conrelid
            INNER JOIN pg_catalog.pg_namespace nsp
                       ON nsp.oid = connamespace
       WHERE nsp.nspname = '<schema name>'
             AND rel.relname = '<table name>';

Context

StackExchange Database Administrators Q#214863, answer score: 187

Revisions (0)

No revisions yet.