0

私の質問は次のとおりです。


1)主キーである関係R(A,B,C)があり、に依存していると仮定できますか?いいえと言いますが、念のためお願いします。ABF = {}CAB


2)私は、、、と言っているのと同じことを当然のことと思っAB -> CDEています。私は正しいですか?AB -> CAB -> DAB -> EAB -> CEAB -> D


3)を使用R(A,B,C,D)してAB、を主キーにしF = {AB->C}ます。これは入ってい2NFますか?D主キーは言うまでもなく、他の属性に依存しないので、私はノーと言います!


4)私は

R(K, L, M, N, O,P) 

KL主キーであること

F = { KL->MN, KL->OP, M->N, O->P }

R2NFまたはにあり3NFます。両方とも(間接的ではありますが)主キー全体PN依存します。中にいるだけで十分2NFですか?もしそうなら、リレーションの非プライム属性間に依存関係があってはならないので、そうRではないと思いますよね?3NF3NF

ありがとう

4

1 に答える 1

1

これは宿題だと思っているので、必ずしも答えではなく方向性を示しています。

1) 関係 R(A,B,C) があり、AB が主キーで、F = {} の場合、C が AB に依存していると仮定してもよろしいですか? いいえとは言えませんが、念のためにお願いしています。

何も与えられていない場合に、機能的な依存関係を特定する方法を知っていますか? この場合、「{A,B} の値が与えられた場合、それらの値は {C} の値を 1 つだけ識別しますか?」と自問します。答えが「はい」の場合、機能的な依存関係があります。答えが「いいえ」の場合は、そうではありません。

2) AB -> CDE は、AB -> C、AB -> D、AB -> E と言うのと同じであり、AB -> CE、AB -> D と言うのと同じであると私は当然のように思っています。私は正しいですか?

「言っているのと同じ」とは言いません。機能依存性 AB->CDE から、他のすべての機能依存性を導き出すことができると思います。

3) R(A,B,C,D) を取り、AB を F = {AB->C} の主キーとします。これは2NFですか?D は主キーは言うまでもなく、他の属性に依存しないため、いいえと言います。

番号 1 を参照してください。


以下のコメントで質問を展開します。. .

{A,B} -> {1 つおきの列} と言う場合、1NF 関係がすべて 2NF でないのはなぜですか?

すべての 1NF テーブルに複数列の主キーがあるわけではなく、複数列の主キーを持つすべての 1NF テーブルに、そのキーの一部のみによって決定される他の列があるわけではないためです。

PK が個人の ID であると想像してください。ここで、その関係における他の唯一の属性が、1997 年にアリゾナで飛んでいるのが見つかったアヒルの数であると想像してみてください。現実の世界ではAとBの間に何の関係もありませんが、あなたの言うことから、A -> Bと推測されます.

ああ、でもこの 2 つの列に関係があります。それらを同じテーブルに入れるため、それらの間には関係があります。そのテーブル内で、A の値がわかっている場合、B の値は 1 つだけです (A が B の複数の値を決定した場合、A が主キーになる可能性はありません)。

于 2011-07-18T02:02:47.793 に答える