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