Re: Foreign keys
From: Kira Yamato <kirakun_at_earthlink.net>
Date: Wed, 16 Jan 2008 19:22:05 -0500
Message-ID: <2008011619220516807-kirakun_at_earthlinknet>
>> On 2008-01-14 21:18:57 -0500, "Evan Keel" <evank..._at_sbcglobal.net> said:
>>
>>
>> Foreign keys are functional dependencies across two relations.
>>
>> More specifically, let
>> R1(K1, A1, B1)
>> be a relation with attribute sets K1, A1 and B1 where K1 is R1's
>> primary key and B1 is a foreign key to the relation
>> R2(K2, A2)
>> where K2 is R2's primary key and A2 is the set of its remaining attributes
>>
>> Then the foreign key B1 represents the functional dependency
>> B1 --> A2,
>> which is the functional dependency across two relation I mentioned in
>> the first sentence.
>>
>> Furthermore, through transitivity by the functional dependency K1 -->
>> B1, the foreign key also represents the inter-relational functional
>> dependency
>> K1 --> A2.
>>
>> Am I correct to say this?
Date: Wed, 16 Jan 2008 19:22:05 -0500
Message-ID: <2008011619220516807-kirakun_at_earthlinknet>
On 2008-01-16 17:37:02 -0500, Jan Hidders <hidders_at_gmail.com> said:
> On 15 jan, 08:24, Kira Yamato <kira..._at_earthlink.net> wrote:
>> On 2008-01-14 21:18:57 -0500, "Evan Keel" <evank..._at_sbcglobal.net> said:
>>
>>> Always a physical issue. Never a theory issue.Agree?
>>
>> Foreign keys are functional dependencies across two relations.
>>
>> More specifically, let
>> R1(K1, A1, B1)
>> be a relation with attribute sets K1, A1 and B1 where K1 is R1's
>> primary key and B1 is a foreign key to the relation
>> R2(K2, A2)
>> where K2 is R2's primary key and A2 is the set of its remaining attributes
> .
>>
>> Then the foreign key B1 represents the functional dependency
>> B1 --> A2,
>> which is the functional dependency across two relation I mentioned in
>> the first sentence.
>>
>> Furthermore, through transitivity by the functional dependency K1 -->
>> B1, the foreign key also represents the inter-relational functional
>> dependency
>> K1 --> A2.
>>
>> Am I correct to say this?
> > Not really. Your observation that sometimes the inference rules are > the same for functional and inclusion dependencies is correct, but > unfortunately this is not true in general. For example, the > augmentation rule does not always hold for inclusion dependencies. In > fact, axiomatizing the combination of functional and inclusion > dependencies is a notoriously difficult problem and in the past there > has been intensive research on that subject.
I think my initial confusion came from my misunderstanding that functional dependencies can be defined across relations.
However, after reading the definition more carefully, functional dependency is only defined within a single relation.
Foreign keys, on the other hand, represent inter-relational constraints. It takes on a different definition.
Consequently, they take on different inference rules, as you stated.
I apologize for my confusion. Especially to Brian Selzer. And thanks for both yours and his corrections.
-- -kiraReceived on Thu Jan 17 2008 - 01:22:05 CET