Re: Changing column constraints? - Mailing list pgsql-sql

From Stephan Szabo
Subject Re: Changing column constraints?
Date
Msg-id 20020221114936.W21441-100000@megazone23.bigpanda.com
Whole thread Raw
In response to Re: Changing column constraints?  ("Josh Berkus" <josh@agliodbs.com>)
List pgsql-sql
On Thu, 21 Feb 2002, Josh Berkus wrote:

> Henry,
>
> > If I have a column constraint:
> >     addr_type char( 10 ) default 'street'
> >     CHECK( addr_type = 'street' || addr_type = 'pobox' ),
> > in a table, how can I add another choice to the list after I've
> >  already
> > entered data into the table?
>
> Three options:
>
> One, drop and rebuild the table with the constraint modified.  Sorry,
>  but until we have ALTER CONSTRAINT implemented, this is the only
>  simple way to modify and exisiting constraint.

Umm... on 7.2 you should be able to drop the existing constraint
and add a new one.  If you don't name the constraint you have to
find the internally generated name for the constraint from pg_relcheck
however.

> Three, drop and re-build the table, and this time do it right: have
>  column addr_type reference another table called "addr_types" that list
>  the acceptable type values.  Then use a foriegn key to enforce this.

This is probably happier in any case...



pgsql-sql by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: create index on function - why?
Next
From: "Rod Taylor"
Date:
Subject: Re: [HACKERS] Function to split pg_trigger.tgargs