判断是否是 3NF 的条件: 对于 R 上的每个函数依赖 X->A (X 是关系 R 属性的一个子集,
A 是 R 的一个属性) ,以下条件中的一个成立:
1 X ∈ A
2 X 是超码
3 A 是 R 的码的一部分

判断是否是 BCNF 的条件:对于 R 上的每个函数依赖 X->A(X 是关系 R 属性的一个子
集,A 是 R 的一个属性) ,以下条件中的一个成立:
1 X ∈ A
2 X 是超码

例子如下:

(a).
{ACD}+
= {A、C、D、B、E}
{BCD}+
={B、C、D、E、A}
{EDC}+
={E、D、C、A、B}
ACD、BCD、CDE are keys for R.

(b)判断是否是 3NF 的条件: 对于 R 上的每个函数依赖 X->A (X 是关系 R 属性的一个子集,
A 是 R 的一个属性) ,以下条件中的一个成立:
1 X∈ A
2 X 是超码
3 A 是 R 的码的一部分
A->B 满足条件 3
BC->E 满足条件 3
ED->A 满足条件 3
所以 R 是 3NF
(c)判断是否是 BCNF 的条件:对于 R 上的每个函数依赖 X->A(X 是关系 R 属性的一个子
集,A 是 R 的一个属性) ,以下条件中的一个成立:
1 X ∈ A
2 X 是超码
A->B 不满足 1&2
BC->E 不满足 1&2
ED->A 不满足 1&2
所以 R 不是 BCNF

最新文章

  1. JIRA FOR LINUX 安装过程
  2. UNIX网络编程-Select模型学习
  3. Android中的pix,sp,dp相关概念
  4. jquery技巧(持续更新。。)
  5. WMS—启动过程
  6. SQL Server 表的管理_关于数据增删查改的操作的详解(案例代码)
  7. 【原创 Hadoop&Spark 动手实践 1】Hadoop2.7.3 安装部署实践
  8. 禁止chrome浏览器的缓冲图片以及css等资源文件
  9. Sublime Text3前端必备插件
  10. .net的XML对象序列化VS WCF中xml序列化问题
  11. 微信公众平台开发之基于百度 BAE3.0 的开发环境搭建(采用 Baidu Eclipse)
  12. Android中Activity启动过程探究
  13. 为什么volatile不能保证原子性?
  14. (转)学习linux的几本书
  15. CSS Display(显示)和Visibility(可见性)
  16. a链接嵌套无效,嵌套链接最优解决办法
  17. JavaScript模块化-require.js,r.js和打包发布
  18. spark reduceByKey
  19. java常见类
  20. IIC协议解释

热门文章

  1. 网络编程实现简单的ssh
  2. JQuery初始加载时注册文本框失去焦点事件
  3. Ubuntu系统---安装QQ
  4. golang 中Pointers Vs References
  5. Redis入门(一)——安装
  6. vue多层次组件监听动作和属性
  7. Java用递归实现全排列,详细
  8. HDU 5634 (线段树)
  9. config文件的实现
  10. BZOJ 1257 [CQOI2007]余数之和 数学