Re: Add a NOT NULL column with default only during add - Mailing list pgsql-general

From Adrian Klaver
Subject Re: Add a NOT NULL column with default only during add
Date
Msg-id 51FAFA37.8020909@gmail.com
Whole thread Raw
In response to Re: Add a NOT NULL column with default only during add  (BladeOfLight16 <bladeoflight16@gmail.com>)
Responses Re: Add a NOT NULL column with default only during add  (BladeOfLight16 <bladeoflight16@gmail.com>)
List pgsql-general
On 08/01/2013 04:59 PM, BladeOfLight16 wrote:
> On Thu, Aug 1, 2013 at 7:53 PM, Adrian Klaver <adrian.klaver@gmail.com
> <mailto:adrian.klaver@gmail.com>> wrote:
>
>     It fails because
>
>     ALTER TABLE x
>     ADD COLUMN data2 VARCHAR(10) NOT NULL DEFAULT 'foo',
>
>     end in , instead of ;
>
>     You have to add the column before you can alter it.
>
>
> =/ That's the way I have it in the SQL Fiddle sample I provided. I was
> asking what Mr. Broersma was suggesting.
>
> I appreciate the effort by both of you, but it seems my points aren't
> getting across. Is there something more I can do to clarify?

What you want is a default that only works during ALTER ADD COLUMN. At
that point though, there is no data added and DEFAULT only works with
INSERTS. Your example of USING with ALTER data_type works because there
actually may be rows already existing and you are not creating a column.

--
Adrian Klaver
adrian.klaver@gmail.com


pgsql-general by date:

Previous
From: BladeOfLight16
Date:
Subject: Re: Add a NOT NULL column with default only during add
Next
From: James Sewell
Date:
Subject: Re: Snapshot backups