2016-04-12 7 views
0

は私が関係を持っている:私はここで、BCNFに分解しようとしていますBCNF(3.5NF)分解の問題

R(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q) 

は私の関数従属している:

- A -> B, C, D 
- B -> A, C, D 
- C -> A, B, D 
- D -> A, B, C 
- F -> A, B, C, D, E, G, H, I, J, K, L, M, N, O, P, Q 
- A, E, G -> B, C, D, F, H, I, J, K, L, M, N, O, P, Q 

Cは明確な選択肢ですが、プライマリキーの場合は、段落の長さが長いフィールドなので、A、E、Gをコンポジットキーとして選択したのは、クエリを配置するのが面倒すぎるためです。

私は、このサイトやウェブ上の他の情報源にも多くの質問がありますが、私自身の問題で解決策を再現することはできません。お時間を

おかげで、

+0

誰かに私に助言を与えることができますか?私は私の関係を分解するまで私のプロジェクトを続けることができません –

答えて

1

この関係は、5(候補)のキーがあります。

R1 (A, B, C, D) 
R2 (A, E, F, G, H, I, J, K, L, M, N, O, P, Q) 

{ (A, E, G) (B, E, G) (C, E, G) (D, E, G) (F) } 

BCNFで分解、解析アルゴリズムを使用するには、以下の2つの関係を作り出します

+0

ありがとう、あなたはスターです –