Robert Haas <robertmhaas@gmail.com> writes:
> On Fri, Jul 29, 2011 at 8:30 AM, Nikhil Sontakke <nikkhils@gmail.com> wrote:
>> Yeah, I have already hacked it a bit. This constraint now needs to be
>> spit out later as an ALTER command with ONLY attached to it
>> appropriately. Earlier all CHECK constraints were generally emitted as
>> part of the table definition itself.
> Hrm. That doesn't seem so good. Maybe we've got the design wrong
> here. It doesn't seem like we want to lose the ability to define
> arbitrary constraints at table-creation time.
Well, you can't define arbitrary indexes within the CREATE TABLE syntax,
either. This does not bother me a lot.
We could imagine doing something like CHECK ONLY (foo), but that seems
quite non-orthogonal with (a) everything else in CREATE TABLE, and
(b) ALTER TABLE ONLY.
regards, tom lane