feature request: create table with unique constraint - Mailing list pgsql-general

From
Subject feature request: create table with unique constraint
Date
Msg-id 74fb2406fc0c223321fbd71021fb32dc@secure-mail.biz
Whole thread Raw
Responses Re: feature request: create table with unique constraint  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-general
begin ;

create table a (
  id serial primary key
  , info text not null -- not interested here
) ;

create table b (
  id serial primary key
  , a_id int not null references a
  , info text not null -- not interested here
  , actual bool not null
) ;

create unique index b_actual on b
  ( a_id , ( case when actual then 0 else id end ) )
;

create table c (
  id serial primary key
  , a_id int not null references a
  , info text not null -- not interested here
  , actual bool not null
  , unique ( a_id , ( case when actual then 0 else id end ) )
) ;


Why can i not define the unique constraint in the
create table? I know this is described in the manual but
why this is.



thanks
Andreas


btw Why must i give the index a name. The name should
be created automatically if none is specified as i
define a unique constraint in the create table.



pgsql-general by date:

Previous
From: Antonio Goméz Soto
Date:
Subject: alter table performance
Next
From: Alan Hodgson
Date:
Subject: Re: alter table performance