欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 美食 > 什么是关系数据库理论?(函数依赖,范式)

什么是关系数据库理论?(函数依赖,范式)

2025/2/21 4:49:13 来源:https://blog.csdn.net/m0_63144319/article/details/145671654  浏览:    关键词:什么是关系数据库理论?(函数依赖,范式)

数据库关系理论

关系数据理论,也被称为关系数据库理论。是数据库领域的重要基础理论,主要用于设计优化关系型数据库,确保数据库中数据的完整性一致性减少数据冗余

1、函数依赖
  • 定义:设 是一个属性集 上的关系模式, 和 是 的子集。若对于 的任意一个可能的关系 , 中不可能存在两个元组在 上的属性值相等, 而在 上的属性值不等, 则称 “ 函数确定 ” 或 “ 函数依赖于 ”,记作 。
  • 示例:在学生信息表(学号,姓名,班级)中,学号可以唯一确定姓名和班级,即存在函数依赖:学号 → 姓名,学号 → 班级。
2、范式

范式是符合某一种级别的关系模式的集合,是衡量关系模式好坏的标准。满足不同程度要求的为不同范式,从低到高主要有第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、巴斯 - 科德范式(BCNF)等。

  • 第一范式(1NF)
    • 定义:如果一个关系模式 的所有属性都是不可分的基本数据项,则 。
    • 示例:若一个学生选课表中,“课程” 属性包含多门课程,且未分开存储,就不满足 1NF;将 “课程” 拆分为多个单独的课程记录,使每个属性都是不可再分的,就满足了 1NF。
  • 第二范式(2NF)
    • 定义:若关系模式 ,并且每一个非主属性都完全函数依赖于任何一个候选码,则 。
    • 示例:在订单表(订单号,产品编号,产品名称,数量)中,候选码是(订单号,产品编号),若产品名称只依赖于产品编号,而不依赖于整个候选码,那么该表不满足 2NF;将订单表拆分为订单表(订单号,产品编号,数量)和产品表(产品编号,产品名称),就满足了 2NF。
  • 第三范式(3NF)
    • 定义:设关系模式 ,若 中不存在这样的码 、属性组 及非主属性 (), 使得 , 成立,,则称 。即每一个非主属性既不部分依赖于码也不传递依赖于码。
    • 示例:在员工信息表(员工编号,部门编号,部门名称)中,员工编号 → 部门编号,部门编号 → 部门名称,存在传递依赖,不满足 3NF;将其拆分为员工表(员工编号,部门编号)和部门表(部门编号,部门名称),就满足了 3NF。
  • 巴斯 - 科德范式(BCNF)
    • 定义:设关系模式 ,若 且 时 必含有码,则 。也就是说,每一个决定因素都包含码。
    • 示例:在关系模式(仓库名,管理员,物品名,数量)中,若存在函数依赖(仓库名,物品名)→ 数量,(仓库名,管理员)→ 物品名,管理员 → 仓库名,该关系模式不满足 BCNF;进行适当的分解后可满足 BCNF。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词