DBMS中的部分依赖
什么是部分依赖?
部分依赖是指当一个非主属性函数依赖于候选键的一部分时。
第二范式 (2NF) 消除了部分依赖。
让我们来看一个例子 -
示例
<StudentProject>
| 学生ID | 项目编号 | 学生姓名 | 项目名称 |
| S01 | 199 | Katie | 地理位置 |
| S02 | 120 | Ollie | 集群探索 |
在上表中,我们存在部分依赖;让我们看看如何 -
主键属性是 **学生ID** 和 **项目编号**,并且
| **学生ID** = 学生的唯一 ID **学生姓名** = 学生的姓名 **项目编号** = 项目的唯一 ID **项目名称** = 项目的名称 |
如前所述,非主属性,即 **学生姓名** 和 **项目名称**,应该函数依赖于候选键的一部分,才能成为部分依赖。
**学生姓名** 可以由 **学生ID** 确定,这使得关系成为部分依赖。
**项目名称** 可以由 **项目编号** 确定,这使得关系成为部分依赖。
因此,<StudentProject> 关系违反了规范化中的 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