0

ここで別の質問に取り組んでおり、候補キーとスーパーキーを求めています。私は正しい候補キーを持っていると信じていますが、誰かがそれを検証できれば素晴らしいでしょう. また、スーパーキーを見つけるのに苦労しています。それらを見つけるための一般的な公式があるかどうかはわかりません。

質問は次のとおりです。

Relation Schema: U(A,B,C,D)

FD's: 

A-->B

B-->C

C-->D

D-->A

候補キーは {A}、{B}、{C}、{D} であることがわかりました。誰かがこれが正しいかどうかを確認できれば、非常に感謝しています。また、このスーパーキーを見つける方法を教えていただければ幸いです。答えを直接探しているわけではありません。候補キーに対する答えが正しいかどうか、およびこの質問とおそらく他の質問のスーパーキーを見つける方法を知りたいだけです (それらを見つける一般的な方法がある場合)。

誰かが助けてくれることを願っています。誰かが私がこれを理解するのを手伝ってくれたら、最良の答えを評価します.

みんなで乾杯。

4

1 に答える 1

0

簡単な方法で候補キーを見つける方法を説明しましょう。

左、右、中央の 3 つの列を形成します。

左の列に、 FD の左側にのみ表示される属性を追加します。

右側の列に、FD の右側にのみ表示される属性を追加します。

中央の列に、 FD の右側と左側の両方に表示される属性を追加します。

説明:

左の列の属性は、すべての可能な候補キーにこれらの属性が含まれている必要があることを示しています

右側の列の属性は、候補キーにそれを含めてはならないことを示しています

中間の属性は、スーパー キーに含まれる場合と含まれない場合があります。

与えられた例では、すべての属性が中央の列の下にあります

次に、Closure プロパティを適用し、

A+=ABCD

以来

A->再帰ルール

A->B与えられた

A->C推移ルールA->B および B->C

A->D推移ルールA->B および B->C および C->D

同様に、他のキーも候補キーとして表示できます。

スーパーキーは、候補キーと非プライム属性のスーパーセットに他なりません

したがって、あなたの答えは正しいです

そして、この関係のスーパーキーは候補キーのスーパーセットなので、

スーパーキーはABACABCなどです。

お役に立てれば。

于 2015-05-10T09:27:59.303 に答える