Adding a Column: default values now allowed

Started by Michael Fuhrover 21 years ago2 messagesdocs
Jump to latest
#1Michael Fuhr
mike@fuhr.org

PostgreSQL 8.0.0rc4

5.6.1 "Adding a Column" says:

Also, you cannot define a default value on a new column. According
to the SQL standard, this would have to fill the new columns in the
existing rows with the default value, which is not implemented yet.

Adding a column with a default appears to be implemented now:

CREATE TABLE foo (label text);
INSERT INTO foo VALUES ('item 1');
INSERT INTO foo VALUES ('item 2');
INSERT INTO foo VALUES ('item 3');
ALTER TABLE foo ADD COLUMN value integer DEFAULT 123;
SELECT * FROM foo;
label | value
--------+-------
item 1 | 123
item 2 | 123
item 3 | 123
(3 rows)

--
Michael Fuhr
http://www.fuhr.org/~mfuhr/

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Michael Fuhr (#1)
Re: Adding a Column: default values now allowed

Michael Fuhr <mike@fuhr.org> writes:

PostgreSQL 8.0.0rc4
5.6.1 "Adding a Column" says:

Also, you cannot define a default value on a new column. According
to the SQL standard, this would have to fill the new columns in the
existing rows with the default value, which is not implemented yet.

Drat, I thought I'd caught all those. Thanks.

regards, tom lane