数据库 范式
来源:互联网 发布:单片机中断系统数码管 编辑:程序博客网 时间:2024/06/06 04:10
1NF:数据库表的每一列 不可分割 不可重复
2NF:数据库表的每一行(或实例),必须可以被唯一的区分
非主属性 完全依赖与主键
SelectCourse(学号, 姓名, 年龄, 课程名称, 成绩, 学分)
(学号, 课程名称) → (姓名, 年龄, 成绩, 学分)
(课程名称) → (学分)
(学号) → (姓名, 年龄)
3NF:要求一个数据库表中不包含已在其它表中已包含的非主关键字信息
不存在函数传递依赖
(学号) → (姓名, 年龄, 所在学院, 学院地点, 学院电话)
(学号) → (所在学院) → (学院地点, 学院电话)
BCNF:不能是关键字段决定关键字段
StorehouseManage(仓库ID, 存储物品ID, 管理员ID, 数量)
(仓库ID, 存储物品ID) →(管理员ID, 数量)
(管理员ID, 存储物品ID) → (仓库ID, 数量)
由于存在如下决定关系:
(仓库ID) → (管理员ID)
(管理员ID) → (仓库ID)
即存在关键字段决定关键字段的情况,所以其不符合BCNF范式
函数依赖:表示一种一对一的关系,是一种直接确定的关系;
多值依赖:表示一种一对多的关系,是一种间接相关的关系;
4NF:第四范式是消除表中的多值依赖
2NF:数据库表的每一行(或实例),必须可以被唯一的区分
非主属性 完全依赖与主键
SelectCourse(学号, 姓名, 年龄, 课程名称, 成绩, 学分)
(学号, 课程名称) → (姓名, 年龄, 成绩, 学分)
(课程名称) → (学分)
(学号) → (姓名, 年龄)
3NF:要求一个数据库表中不包含已在其它表中已包含的非主关键字信息
不存在函数传递依赖
(学号) → (姓名, 年龄, 所在学院, 学院地点, 学院电话)
(学号) → (所在学院) → (学院地点, 学院电话)
BCNF:不能是关键字段决定关键字段
StorehouseManage(仓库ID, 存储物品ID, 管理员ID, 数量)
(仓库ID, 存储物品ID) →(管理员ID, 数量)
(管理员ID, 存储物品ID) → (仓库ID, 数量)
由于存在如下决定关系:
(仓库ID) → (管理员ID)
(管理员ID) → (仓库ID)
即存在关键字段决定关键字段的情况,所以其不符合BCNF范式
函数依赖:表示一种一对一的关系,是一种直接确定的关系;
多值依赖:表示一种一对多的关系,是一种间接相关的关系;
4NF:第四范式是消除表中的多值依赖
在关系模式中,函数依赖不能表示属性值之间的一对多联系,这些属性之间有些虽然没有直接关系,但存在间接的关系,把没有直接联系、但有间接的联系称为多值依赖的数据依赖。例如,教师和学生之间没有直接联系,但教师和学生可通过系名,或任课把教师和学生联系起来。
举例如下,有这样一个关系 <仓库管理员,仓库号,库存产品号> ,假设一个一个产品只能放到一个仓库中,但是一个仓库可以由若干管理员,那么对应于一个 <仓库管理员,库存产品〉有一个仓库号,而实际上,这个仓库号只与库存产品号有关,与管理员无关,就说这是多值依赖。
- 数据库范式 三范式
- 数据库范式
- 数据库范式
- 数据库范式
- 数据库范式
- 数据库范式
- 数据库范式
- 数据库范式
- 数据库范式
- 数据库范式
- 数据库---范式
- 数据库范式
- 数据库范式
- 数据库范式
- 数据库范式
- 数据库范式
- 数据库范式
- 数据库范式
- CTO教你如何成长为一个优秀的程序员
- JAVA MD5加密算法
- apk包反编译
- Qt环境(MinGW, VS2008)下编译MySQL驱动
- Android上如何用C语言编程--你好,世界!(2)
- 数据库 范式
- FTP的port和pasv模式的工作方式
- Substitution Failure Is Not An Error
- asp.net中多个文件的上传
- VMWare Tools 和 Shared folder(共享文件夹)
- 08-25 USACO 4.1~4.2 搜索,最大流,二分匹配
- java使用XSL+XML生成HTML文件
- hdu 3681
- Oracle PL/SQL之Flashback Table与外键约束