Thread: Re: Adding identity column to a non-empty table

Re: Adding identity column to a non-empty table

From
Chris Wilson
Date:
Hi all, I'd like to resurrect this thread, as it seems that there was no definitive answer: https://www.postgresql.org/message-id/959f28ef-4245-8349-eff9-0ff5f666df03%40lucee.org 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.