数据库规范化是组织数据库属性以减少或消除的过程数据冗余(具有相同的数据, 但位于不同的位置).
由于数据冗余而出现的问题
数据冗余不必要地增加了数据库的大小, 因为在许多地方重复了相同的数据。在插入, 删除和更新操作期间也会出现不一致的问题。
功能依赖
功能依赖关系是数据库中某个关系中两组属性之间的约束。功能相关性由箭头(→)表示。如果属性A在功能上确定B, 则将其写为A→B。
例如, employee_id→name表示employee_id在功能上确定雇员的姓名。作为时间表数据库中的另一个示例, {student_id, 时间}→{lecture_room}, 学生ID和时间确定了学生应所在的教室。
功能依赖是什么意思?
函数依赖性A→B表示对于A的特定值的所有实例, B的值相同。
例如, 在下表中, A→B为真, 但B→A为真, 因为对于B = 3, 存在不同的A值。
AB------1323401340
琐碎的功能依赖
仅当Y是X的子集时, X→Y才是平凡的。
【数据库规范化简介】例子
ABC → ABABC → AABC → ABC
非平凡的功能依赖
当Y不是X的子集时, X→Y是不平凡的函数依赖性。
当X与Y相交为NULL时, 将X→Y称为完全非平凡的。
例子:
Id → Name, Name → DOB
半非琐碎功能依赖项
当X与Y相交不为NULL时, X→Y被称为半平凡的。
例子:
AB → BC, AD → DC
- 正规表格
- 标准化测验
推荐阅读
- DBMS中的范式详细指南
- 数据库管理系统常见问题介绍|S9
- 数据库管理系统常见问题介绍|S8
- 数据库管理系统常见问题介绍|S7
- 数据库管理系统常见问题介绍|S6
- 数据库管理系统常见试题介绍|S5
- 数据库管理系统常见问题介绍|S4
- 数据库管理系统常见问题合集|S11
- #yyds干货盘点# 合并 k 个排序链表