Re: ALTER TABLE & NOT NULL - Mailing list pgsql-general

From Tom Lane
Subject Re: ALTER TABLE & NOT NULL
Date
Msg-id 28105.1018144324@sss.pgh.pa.us
Whole thread Raw
In response to Re: ALTER TABLE & NOT NULL  (Joe Conway <mail@joeconway.com>)
List pgsql-general
Joe Conway <mail@joeconway.com> writes:
>> is this also what happens at the time of table creation when one specifies
>> that a column is to be NOT NULL?

> Not quite the same, but the net effect is.

The built-in NOT NULL constraint is more efficient than doing it with a
general-purpose CHECK expression (or should be, anyway, but I've not
tried to measure the performance difference).

> I think I remember some discussion around making a way to add a not null
> modifier, but I don't believe it can be done today.

Chris Kings-Lynne recently contributed code to support ALTER COLUMN SET
NOT NULL and DROP NOT NULL, which will enable turning the built-in
constraint on and off.  It will be in 7.3.

> (Except, maybe by hacking the system tables directly - it seems to work
> for me, but that's always a risky proposition.

That's all that the ALTER code does ;-)

            regards, tom lane

pgsql-general by date:

Previous
From: Joe Conway
Date:
Subject: Re: ALTER TABLE & NOT NULL
Next
From: Alvaro Herrera
Date:
Subject: Re: Porting from MySql - meta data issues