2017-10-18 10 views
-1

リレーショナル・データベースの通常のフォームに関するこれらの試験問題については疑問に思っています。私には最初のものが3NFでなければならないようで、2番目の2NF(つまり最初の答えは間違っているはずです)。抽象的なリレーショナル・スキーマの通常の形式

質問9. [...] C int, D int NOT NULL, UNIQUE (B,C) [...]

私の推論は、Cがユニークであることから、それはまた、候補キー、したがって、プライム属性であるということです。また、それはスーパーキーでもあり、3NFの記述に合っています。 3NFため

定義:関係スキーマRは、非自明な関数従属性X→AがRに保持し、いずれか (a)のXは、Rのスーパーキーであるときはいつでも、あれば第3正規形(3NF)でありますまたは(b)のAは、最初の質問は、Cが一意であることを言っていませんR.

databasequestion

+0

私は直接imgを投稿できるようになるためには、もっと多くのポイントが必要なようです。 – Krilliminell

+0

"Cはユニークです"とはどういう意味ですか? PS [可能な限りテキストを使用して投稿してください。つまり、そのリンク/画像もすべて投稿してください。](https://meta.stackoverflow.com/a/285557/3404097)また、著者にその著者にクレジットを与える。また、暗い箱について説明してください。それが彼らかあなたかどうかを私たちに確かめさせてはいけません。また、 "3NFの記述をフィッティング"して実際にあなたが何を言っているのかを編集してください。スキーマ[属性、スーパーキーまたはCKではなく、NFに適合し、あなたが書いたものは意味をなさないものです。 – philipxy

答えて

1

の主要属性であり、それは(Bことを意味し、 "UNIQUE(B、C)" と言います、C)サブロー値は表内で一意です。

DはNULLではないため、おそらくB & CはNULLである可能性があります。しかし、リレーショナル理論にはNULLがありません。だからあなたやあなたのコースや教科書が{C}が決定子であることを意味するのかどうかは明らかではありません。 Or by "FD" (functional dependency), "superkey", "CK" (candidate key), "PK" (primary key), any of the "NFs" (normal forms) or any other relational terms。また、SQLではPRIMARY KEYは実際にはUNIQUE NOT NULLを意味し、UNIQUEは3VLを使用するため、これらの用語のどちらも関係の意味を持ちません。だから、私たちに言い聞かせるか、または参考にする必要があります。 (おそらくそれは問題を解決していないので、NULLを持つ可能性のあるSQLテーブルを再利用するという意味です。)&

{C}が一意で、 Cはユニークであるため、候補キーでもあります。「音ではありません。 {}がない場合、つまりテーブルが最大で1つの行を持つように制約されていない場合は、CKだけです。

また、保持しているという理由だけで一部は非自明なFDを満たすには、(a)または(b)彼らは、やるので3NF再あなたの推理は間違っているすべて意味するものではありません。

関連する問題