0

私は、リレーション R の候補キーとスーパーキーを見つけることを求める教科書の演習を行っています。

候補キーを解決しましたが、スーパーキーを解決する方法がわかりません。私は少し混乱しています。

リレーション スキーマと関数の依存関係は次のとおりです。

Relation Schema: **S(A, B, C, D)** 

**FD's:**

A-->B

B-->C

B-->D

そのため、それを解いた後、{A、AB}が候補キーであることがわかりました。このためのスーパーキーを見つける方法がわかりません。どんな助けでも大歓迎です。皆さん、ありがとうございました。

4

1 に答える 1

0

候補キーを見つけるには、依存関係を使用してすべての属性につながるパスを確認する必要があります。あなたは からに到達できるのでA、あなたは正しいです。依存関係で言及されていないため、候補キーと見なすことはできません。これについて考える別の方法は、候補キーが行の一意性を保証する属性の最小数であることを覚えておくことです。しかし、はすでに候補キーであるため、最小セットではありません。候補キーは 1 つしかないため、. はキー属性と呼ばれ、他のすべての属性は非キー属性と呼ばれます。次に、非キー属性の数の累乗でスーパーキーの数を決定しますAB{C, D}ABAABAA2(B, C, D). このシナリオでは、8 つのスーパー キーが必要です。それらを見つける方法は、非キー属性の可能なすべての組み合わせで A を単純にマッシュアップすることです。したがって、スーパーキーはA, AB, AC, AD, ABC, ABD, ACD, ABCD.

于 2015-05-07T04:38:16.303 に答える