Hi all,
I'd like to resurrect this thread, as it seems that there was no definitive answer:
Does anyone know how to add an IDENTITY column to an existing non-empty table? Like Igal, I get the error message "column "id" contains null values" when I try to do this:
ALTER TABLE test_table
ADD COLUMN id integer GENERATED ALWAYS AS IDENTITY;
And likewise with GENERATED BY DEFAULT. It seems strange that the column does not populate itself when set to GENERATED ALWAYS.
From the test cases in src/test/regress/sql/identity.sql, it seems that this is by design, but it seems an unusual design choice to force the user to jump through hoops to add an IDENTITY column.
Thanks, Chris.