PostgreSQL stores *all* constraints: check, not-null, PK, FK, unique, exclusion and domain constraints as rows in `pg_constraint` catalog.
In Postgres 18, even NOT NULL constraints now get their own entries here (before 18 they lived in `pg_attribute`!).
6 days ago