1

次の関係があるとします

C -> B
CB -> AC
CAE -> FB
D -> E
CA -> B

私の本で与えられた正規の表紙はC -> AB, CE -> F, D -> E

しかし、カノニカル カバーも可能C - AB, D - EF?です。1 つの関係に対して 2 つの異なるカノニカル カバーを使用できますか?

4

2 に答える 2

3

ただし、Canonical の表紙はC - AB, D - EF?にすることもできます。

いいえ、機能依存関係 (FD) のセットの正規のカバーにはなりません。F の標準的なカバーは、 F と同等の関数依存関係の「最小限の」セットであり、冗長な依存関係や依存関係の冗長な部分はありません。

あなたが提案する正規の表紙は と同等ではありませんF。たとえば、機能依存関係CAE->FBは、提案された標準カバーでは完全にはカバーされていないため、標準カバーではありません。

一方、あなたの本で与えられたものC -> AB, CE -> F, D -> Eは正規の表紙で​​あり、この FD のセットで可能な唯一の正規の表紙で​​す。

1 つの関係に対して 2 つの異なる正規カバーを使用できますか?

はい、できます。正規のカバーを見つけるために、私たちは -

  • 最初にシングルトンの右辺 (RHS) を確認します
  • 次に、不要な左側 (LHS) 属性をすべて削除します
  • 3番目に、冗長な機能依存関係を削除します

上記の 3 番目のステップにより、1 つの関係に対して異なる正規カバーを使用できます。これを例を挙げて説明します。

FD を次のように仮定します。

X→YZ
Y→XZ
Z→XY

最初にシングルトン RHS を確認します。だから私たちは持っています:

  1. X→Y
  2. X→Z
  3. ヨ→エ
  4. ヨ→ズ
  5. Z→X
  6. Z→Y

2 番目の無関係な LHS はありません。もう満足。

3 番目に冗長 FD を削除します。これで、(2)、(3)、および (6) を冗長な依存関係として削除し、最小限のカバー セットを次のように設定できます。

1:

X→Y,
Y→Z,
Z→X

または、(1)、(4)、および(5)を冗長な依存関係として削除し、最小限のカバーを次のように設定できます。

2:

Z→Y,
Y→X,
X→Z

したがって、この場合、同じ関係に対して 2 つの正規カバーがあります。

于 2015-12-18T12:26:01.780 に答える
1

はい、一連の機能依存関係 (関係ではありません) は、複数の正規カバーを持つことができます。Date は、 An Introduction to Database Systems、第 7 版、p346fの演習 10.12 への回答で段階的な導出を行います。

Date は正規のカバーという用語を使用していません。彼は多かれ少なかれ、還元不可能なカバーを使用しています。

于 2015-12-17T11:43:40.733 に答える