Re: Array values and foreign keys - Mailing list pgsql-general

From Pierre-Frédéric Caillaud
Subject Re: Array values and foreign keys
Date
Msg-id opsgjddwmocq72hf@musicbox
Whole thread Raw
In response to Array values and foreign keys  (Daniel Savard <dsavard@cids.ca>)
Responses Re: Array values and foreign keys  (Michael Fuhr <mike@fuhr.org>)
Re: Array values and foreign keys  (Daniel Savard <dsavard@cids.ca>)
List pgsql-general

    You can't express it directly with a CHECK constraint but you can do this
:

    - add CHECK( test_array( yourcolumn )) in your table definition
    - create function test_array which takes an array and looks if all its
elements are in your table T2, I do something like comparing the length of
the array to SELECT count(1) FROM T2 WHERE key IN array
    You can do it other ways but you'll have to use a function.


On Wed, 27 Oct 2004 10:19:02 -0400, Daniel Savard <dsavard@cids.ca> wrote:

> Is there a way to define a foreign key for the values of an array?
>
> For example, if table T1 is having a colum A which is defined as
> integer[] can I define a foreign key in order to force each value to be
> a pointer (index) to a row in a table T2?
>
> If yes, how? Is there any shortcomings to this approach?
>
> Thanks,
>
> Daniel Savard
>
> ---
> Daniel Savard
> dsavard@cids.ca
>
> ---------------------------(end of broadcast)---------------------------
> TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org
>



pgsql-general by date:

Previous
From: Thomas F.O'Connell
Date:
Subject: Re: Newbie question about escaping in a function
Next
From: Doug McNaught
Date:
Subject: Re: Reasoning behind process instead of thread based