Add ALTER TABLE ... ALTER CONSTRAINT ... SET [NO] INHERIT

Álvaro Herrera <alvherre@alvh.no-ip.org>

Commit: f4e53e10b6ce0eedeb98caa4356facb47c7bb9cb
Author: Álvaro Herrera <alvherre@alvh.no-ip.org>
Date: 2025-03-05T12:50:22Z
Releases: 18.0
Add ALTER TABLE ... ALTER CONSTRAINT ... SET [NO] INHERIT

This allows to redefine an existing non-inheritable constraint to be
inheritable, which allows to straighten up situations with NO INHERIT
constraints so that thay can become normal constraints without having to
re-verify existing data.  For existing inheritance children this may
require creating additional constraints, if they don't exist already.

It also allows to do the opposite, if only for symmetry.

Author: Suraj Kharage <suraj.kharage@enterprisedb.com>
Reviewed-by: jian he <jian.universality@gmail.com>
Discussion: https://postgr.es/m/CAF1DzPVfOW6Kk=7SSh7LbneQDJWh=PbJrEC_Wkzc24tHOyQWGg@mail.gmail.com

Files

Documentation touched

Discussion