Re: operator exclusion constraints

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Simon Riggs <simon@2ndQuadrant.com>
Cc: Jeff Davis <pgsql@j-davis.com>, pgsql-hackers@postgresql.org
Date: 2009-11-01T23:07:54Z
Lists: pgsql-hackers
Simon Riggs <simon@2ndQuadrant.com> writes:
> The syntax be easier to read if it was stated as a comparison
> e.g. in the circle example
>   CHECK ( NOT (NEW.c && c)) USING GIST

I don't think this is a good idea at all.  NEW is a nonstandard
Postgres-ism, and introducing it into this syntax doesn't seem very
future-proof to me.  What's more, the above is not in the least
analogous to a regular CHECK constraint, because there's some implicit
notion of "c" ranging over all other rows, which is not what is meant
by the same column reference in a CHECK constraint.

I agree that the proposed syntax is a bit awkward, but this isn't
better.

			regards, tom lane