mysql 关系型数据库设计中的一些概念

关系数据结构中的一些概念

  • 域: 每个属性的取值范围
  • 关系: 所有属性的笛卡尔乘积的子集称作在对应的域上的关系
  • 候选码:某一组属性的值可以唯一地确定一个元组,但其真子集却不能(单个属性的真子集是空集)
  • 主属性: 包含在任何一个候选码中的属性成为主属性
  • 主码: 若一个关系有多个候选码,则选择一个作为主码
  • 函数依赖: 记A属性集 = {a1,a2…an}, B属性集 = {b1, b2…bn}
    • 由 A 属性可以确定 B 属性,则 B 函数依赖于 A
    • 完全函数依赖: A 可以确定 B,但是A的任何一个真子集(不包含本身)确定不了 B, 并且称 A 是 B 的候选码
    • 部分函数依赖: A 可以确定 B, 并且存在一个A的真子集也可以确定 B

关系数据库设计范式

  • 1NF: 在一个关系中保证每一行与每一列的交叉处只存在一条记录,即保证每个数据项的原子性
    例如
    --sno------class------score--
    |    | cname | cnumber |    |
    |  1 | art   | 007     |90  | 
    
  • 2NF: 在1NF的基础上消除非主属性对其候选码的部分函数依赖,即要想办法让所有非主属性码都是完全函数依赖
  • 3NF: 在2NF的基础上消除非主属性对码的传递依赖,即不准在一个关系中存在传递依赖这种情况
  • BCNF:
    • 所有非主属性对每一个候选码都是完全函数依赖
    • 所有的主属性对每一个不包含它的候选码也是完全函数依赖(基于3NF的扩充)
    • 没有任何属性完全函数依赖于非码的任何一组属性
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值