Thread: UNIQUE not unique with inheritance (workaround?)

UNIQUE not unique with inheritance (workaround?)

From
Samuel Sieb
Date:
Is there any workaround for this problem?  I'm getting involved in a 
project where inheritance is an incredibly useful feature, but the 
non-unique issue could be a serious stumbling block.  Is there any way 
to work around it with a trigger or something?



Re: UNIQUE not unique with inheritance (workaround?)

From
Oliver Elphick
Date:
On Sat, 2003-02-08 at 19:34, Samuel Sieb wrote:
> Is there any workaround for this problem?  I'm getting involved in a 
> project where inheritance is an incredibly useful feature, but the 
> non-unique issue could be a serious stumbling block.  Is there any way 
> to work around it with a trigger or something?

Give each table in the hierarchy a foreign key reference to another
table which holds a unique list of the primary keys and a column that
says which table they are in.  Use triggers to update this other table
and to prevent duplications in the hierarchy.

.
-- 
Oliver Elphick                                Oliver.Elphick@lfix.co.uk
Isle of Wight, UK                             http://www.lfix.co.uk/oliver
GPG: 1024D/3E1D0C1C: CA12 09E0 E8D5 8870 5839  932A 614D 4C34 3E1D 0C1C
========================================   "But the LORD is in his holy temple; let all the earth      keep silence
beforehim."           Habakkuk 2:20 
 



Re: UNIQUE not unique with inheritance (workaround?)

From
Bruce Momjian
Date:
Or create a sequence, and make each table in the inheritance hierarchy
use the same sequence as it's default value.

---------------------------------------------------------------------------

Oliver Elphick wrote:
> On Sat, 2003-02-08 at 19:34, Samuel Sieb wrote:
> > Is there any workaround for this problem?  I'm getting involved in a 
> > project where inheritance is an incredibly useful feature, but the 
> > non-unique issue could be a serious stumbling block.  Is there any way 
> > to work around it with a trigger or something?
> 
> Give each table in the hierarchy a foreign key reference to another
> table which holds a unique list of the primary keys and a column that
> says which table they are in.  Use triggers to update this other table
> and to prevent duplications in the hierarchy.
> 
> .
> -- 
> Oliver Elphick                                Oliver.Elphick@lfix.co.uk
> Isle of Wight, UK                             http://www.lfix.co.uk/oliver
> GPG: 1024D/3E1D0C1C: CA12 09E0 E8D5 8870 5839  932A 614D 4C34 3E1D 0C1C
>                  ========================================
>      "But the LORD is in his holy temple; let all the earth 
>       keep silence before him."           Habakkuk 2:20 
> 
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 4: Don't 'kill -9' the postmaster
> 

--  Bruce Momjian                        |  http://candle.pha.pa.us pgman@candle.pha.pa.us               |  (610)
359-1001+  If your life is a hard drive,     |  13 Roberts Road +  Christ can be your backup.        |  Newtown Square,
Pennsylvania19073