PG_CONSTRAINT
PG_CONSTRAINT records check, primary key, unique, and foreign key constraints on the tables.
Name |
Type |
Description |
---|---|---|
conname |
name |
Constraint name (not necessarily unique) |
connamespace |
oid |
OID of the namespace that contains the constraint |
contype |
"char" |
|
condeferrable |
boolean |
Whether the constraint can be deferrable |
condeferred |
boolean |
Whether the constraint can be deferrable by default |
convalidated |
boolean |
Whether the constraint is valid Currently, only foreign key and check constraints can be set to false. |
conrelid |
oid |
Table containing this constraint. The value is 0 if it is not a table constraint. |
contypid |
oid |
Domain containing this constraint. The value is 0 if it is not a domain constraint. |
conindid |
oid |
ID of the index associated with the constraint |
confrelid |
oid |
Referenced table if this constraint is a foreign key; otherwise, the value is 0. |
confupdtype |
"char" |
Foreign key update action code
|
confdeltype |
"char" |
Foreign key deletion action code
|
confmatchtype |
"char" |
Foreign key match type
|
conislocal |
boolean |
Whether the local constraint is defined for the relationship |
coninhcount |
integer |
Number of direct inheritance parent tables this constraint has. When the number is not 0, the constraint cannot be deleted or renamed. |
connoinherit |
boolean |
Whether the constraint can be inherited |
consoft |
boolean |
Whether the column indicates an informational constraint. |
conopt |
boolean |
Whether you can use Informational Constraint to optimize the execution plan. |
conkey |
smallint[] |
Column list of the constrained control if this column is a table constraint |
confkey |
smallint[] |
List of referenced columns if this column is a foreign key |
conpfeqop |
oid[] |
ID list of the equality operators for PK = FK comparisons if this column is a foreign key |
conppeqop |
oid[] |
ID list of the equality operators for PK = PK comparisons if this column is a foreign key |
conffeqop |
oid[] |
ID list of the equality operators for FK = FK comparisons if this column is a foreign key |
conexclop |
oid[] |
ID list of the per-column exclusion operators if this column is an exclusion constraint |
conbin |
pg_node_tree |
Internal representation of the expression if this column is a check constraint |
consrc |
text |
Human-readable representation of the expression if this column is a check constraint |
- consrc is not updated when referenced objects change; for example, it will not track renaming of columns. Rather than relying on this field, it is best to use pg_get_constraintdef() to extract the definition of a check constraint.
- pg_class.relchecks must be consistent with the number of check-constraint entries in this table for each relationship.
Example
Query whether a specified table has a primary key.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.