"Brian O'Donoghue" <bodonoghue@stockbyte.com> writes:
> ALTER TABLE blah ADD COLUMN whatever integer not null;
> Adding NOT NULL columns is not implemented.
> Add the column, then use ALTER TABLE ... SET NOT NULL.
> Hmm, the last time I checked, this should have worked.
Although 7.1 allowed that, it did not work correctly --- the NOT NULL
wasn't checked. 7.3 is aware that it can't handle it :-).
You can do ALTER TABLE ADD COLUMN, then UPDATE to fill all the rows
with a suitable value, then ALTER again to set the NOT NULL constraint.
Yeah, it's a pain, but no one's gotten around to writing the code that
would be needed to handle doing this in one step.
regards, tom lane