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 <[EMAIL PROTECTED]> 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
[EMAIL PROTECTED]

---------------------------(end of broadcast)---------------------------
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]




---------------------------(end of broadcast)--------------------------- TIP 2: you can get off all lists at once with the unregister command (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])

Reply via email to