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

Reply via email to