Populate unique column with default value - Mailing list pgsql-sql

From Jon Horsman
Subject Populate unique column with default value
Date
Msg-id 4f4c2a010710010824t7a2fbd59kb9102c879b389a5d@mail.gmail.com
Whole thread Raw
Responses Re: Populate unique column with default value
Re: Populate unique column with default value
List pgsql-sql
Hey,

I'm updating the user table in our db to have a new column "username"
as follows.
ALTER TABLE usertable ADD COLUMN username varchar(64)
UPDATE usertable SET username='<extension of current row>' WHERE username ISNULL
ALTER TABLE usertable ALTER COLUMN username SET NOT NULL
ALTER TABLE usertable ADD CONSTRAINT usertable_username_key UNIQUE(username)

I want to essentially do what i have above but need to populate the
username field with some unique value so that the last ALTER will run.I have another column in this table that is
unique,an phone
 
extension, and am hoping to use this as a default username.  Is there
an elegant way i can set the username to be the extension of the
current row or should i just write a little loop that goes threw and
populates my username with the users extension manually for each user
in my db and then run the last ALTER.

Thanks,

Jon.


pgsql-sql by date:

Previous
From: Luis Carlos Ferreira
Date:
Subject: Re: problems with copy
Next
From: "Jon Horsman"
Date:
Subject: Re: Populate unique column with default value