Re: simplifying grammar for ALTER CONSTRAINT .. SET [NO] INHERIT
Peter Eisentraut <peter@eisentraut.org>
From: Peter Eisentraut <peter@eisentraut.org>
To: Álvaro Herrera <alvherre@alvh.no-ip.org>, Pg Hackers <pgsql-hackers@lists.postgresql.org>
Cc: Suraj Kharage <suraj.kharage@enterprisedb.com>
Date: 2025-03-26T11:55:47Z
Lists: pgsql-hackers
On 25.03.25 17:02, Álvaro Herrera wrote: > With commit f4e53e10b6ce we introduced a way to flip the NO INHERIT bit > on not-null constraints. However, because of the way the grammar > dealt with ALTER CONSTRAINT, we were too blind to see a way to implement > it using the existing production. It turns out that we can remove it, > so the commands would be > > ALTER TABLE tab ALTER CONSTRAINT constr INHERIT > ALTER TABLE tab ALTER CONSTRAINT constr NO INHERIT > > i.e. the word SET is no longer needed. > > Do people find this better? This seems better, considering that the SQL-standard syntax for ENFORCED is: ALTER TABLE tab ALTER CONSTRAINT constr ENFORCED ALTER TABLE tab ALTER CONSTRAINT constr NOT ENFORCED also without "SET".
Commits
-
Simplify syntax for ALTER TABLE ALTER CONSTRAINT NO INHERIT
- 4a02af8b1a5f 18.0 landed
-
Add ALTER TABLE ... ALTER CONSTRAINT ... SET [NO] INHERIT
- f4e53e10b6ce 18.0 cited