SELECT
con.conname AS constraint_name,
CASE con.contype
WHEN 'p' THEN 'PRIMARY KEY'
WHEN 'u' THEN 'UNIQUE'
WHEN 'f' THEN 'FOREIGN KEY'
WHEN 'c' THEN 'CHECK'
WHEN 'x' THEN 'EXCLUSION'
ELSE con.contype
END AS constraint_type,
rel.relname AS table_name,
pg_get_constraintdef(con.oid) AS definition
FROM
pg_constraint con
JOIN
pg_class rel ON rel.oid = con.conrelid
JOIN
pg_namespace nsp ON nsp.oid = rel.relnamespace
WHERE
nsp.nspname = 'owner'
AND rel.relname = 'table_name'
ORDER BY
constraint_name;
Minimalistic Oracle contains a collection of practical examples from my encounters with Oracle technologies. When relevant, I also write about other technologies, like Linux or PostgreSQL. Many of the posts starts with "how to" since they derive directly from my own personal experience. My goal is to provide simple examples, so that they can be easily adapted to other situations.
Friday, May 23, 2025
How to find constraints on a table in postgres
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment