BCNF (3.5NF) 分解问题
BCNF (3.5NF) Decomposition Issues
我有一个关系:
R(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q)
我正在尝试将其分解为 BCNF,这是我的功能依赖项:
- 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作为组合键,因为放置查询太乱了。
我很感激在本网站以及网络上的其他资源中有许多与此类似的问题,但我似乎无法在我自己的问题中复制他们的解决方案。
感谢您的宝贵时间,
这个关系有五个(候选)键:
{ (A, E, G) (B, E, G) (C, E, G) (D, E, G) (F) }
BCNF中的分解,使用分析算法,产生如下两个关系:
R1 (A, B, C, D)
R2 (A, E, F, G, H, I, J, K, L, M, N, O, P, Q)
我有一个关系:
R(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q)
我正在尝试将其分解为 BCNF,这是我的功能依赖项:
- 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作为组合键,因为放置查询太乱了。
我很感激在本网站以及网络上的其他资源中有许多与此类似的问题,但我似乎无法在我自己的问题中复制他们的解决方案。
感谢您的宝贵时间,
这个关系有五个(候选)键:
{ (A, E, G) (B, E, G) (C, E, G) (D, E, G) (F) }
BCNF中的分解,使用分析算法,产生如下两个关系:
R1 (A, B, C, D)
R2 (A, E, F, G, H, I, J, K, L, M, N, O, P, Q)