Greg Stark <[EMAIL PROTECTED]> writes:
> It would be nice to be able to do:
> ALTER TABLE ADD foo integer DEFAULT 1
> And there's no question of what what the semantics of this are.
Sure, but you can only optimize this if the default expression is
immutable...
> On the other hand if you do
> ALTER TABLE ADD foo integer
> and then later do
> ALTER TABLE ALTER foo SET DEFAULT 1
> then there is a window where all those foos are NULL and then they magically
> become 1? That doesn't seem tenable.
It'd also be contrary to the SQL spec, AFAICS.
Here's another interesting case to think about:
ALTER TABLE ADD foo integer DEFAULT 1
...
ALTER TABLE ALTER foo SET DEFAULT 2
You'll have to pay the table-traversal cost on one step or the other.
regards, tom lane
---------------------------(end of broadcast)---------------------------
TIP 1: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to [EMAIL PROTECTED] so that your
message can get through to the mailing list cleanly