DBMS中的部分依赖
什么是部分依赖?
部分依赖是指非主属性函数依赖于候选键的一部分。
第二范式 (2NF) 消除了部分依赖。第二范式 (2NF)
让我们来看一个例子:
示例
<学生项目>
| 学生ID | 项目编号 | 学生姓名 | 项目名称 |
| S01 | 199 | Katie | 地理位置 |
| S02 | 120 | Ollie | 集群探索 |
在上表中,我们有部分依赖;让我们看看如何:
主键属性为**学生ID**和**项目编号**,并且
| **学生ID** = 学生的唯一ID **学生姓名** = 学生姓名 **项目编号** = 项目的唯一ID **项目名称** = 项目名称 |
如前所述,非主属性,即**学生姓名**和**项目名称**,应该函数依赖于候选键的一部分,才能成为部分依赖。
**学生姓名** 可以由 **学生ID** 确定,这使得关系成为部分依赖。
**项目名称** 可以由 **项目编号** 确定,这使得关系成为部分依赖。
因此,<学生项目> 关系违反了规范化中的 2NF,并被认为是不良的数据库设计。
为了消除部分依赖和对 2NF 的违反,分解表:
<学生信息>
| 学生ID | 项目编号 | 学生姓名 |
| S01 | 199 | Katie |
| S02 | 120 | Ollie |
<项目信息>
| 项目编号 | 项目名称 |
| 199 | 地理位置 |
| 120 | 集群探索 |
现在,该关系处于数据库规范化的第二范式。
广告
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP