数据库系统
三级模式 - 两级映射
三级模式:内模式、概念模式、外模式
两级映射:概念模式-内模式映射、外模式-概念模式映射
什么是内模式?
内模式又称存储模式,是数据库中全体数据的内部表示或者底层描述,是数据库最低一级的逻辑描述,它描述了数据在存储介质上的存储方式和物理结构。主要关注与数据的存放。
什么是概念模式?
概念模式又称模式或者逻辑模式,它是由数据库设计者综合所有用户的数据按照统一的观点构造的全局逻辑结构,是对数据库中全部数据的逻辑结构和特征的总体描述,是所有用户的公共数据试图(全局视图)。表之间的关联
什么是外模式?
外模式又称子模式,它是某个或者某几个用户所看到的数据库的数据视图,是与某一应用有关的数据的逻辑表示。外模式是从模式导出的一个子集,包含模式中允许特定用户使用的那部分数据。对数据的控制有了进一步的手段。
什么是外模式-概念模式映射?
就是用户视图和数据库表之间的映射关系。
什么是概念模式-内模式映射?
内部存储模式和表之间的映射关系。
数据库设计过程
E-R模型
方框:实体;椭圆:属性;菱形:联系
A、B、C分别是一个关系模式,之间的多对多的联系也是一个关系模式。
关系代数
交、并、差
笛卡尔积、投影、选择
投影就是选择表中列,选择就是选择表中行
连接
相同条件做等值
需要注意的点:笛卡尔积会将所有字段展示,而连接会去掉相同的字段。
规范化理论 函数依赖
一张图很明确
价值与用途
非规范的关系模式,可能存在的问题包括:数据冗余、更新异常、插入异常、删除异常
键
求候选键
找出候选键的关键点:
1、根据题目画出有向图
2、入度为0(就是没有箭头指向它的,入度就是箭头指向A,出度就是从A箭头指出去)
3、能遍历全部节点的
4、若没有这样的节点,则结合既有入度又有出度的节点,检查是否能遍历全图
范式
第一范式(1NF)
当且仅当所有域只包含原子值,即每个分量都是不可再分的数据项(表中列的原子性)
第二范式(2NF)
当且仅当R是1NF,且每一个非主属性完全依赖主键(不存在部分依赖)时,则称R时第二范式(表中去除冗余)
第三范式(3NF)
当且仅当R是2NF,且E中没有非主属性传递依赖于码时,则称R时第三范式(消除表中的和主键有传递依赖的列)
BCNF
对于关系模式R,如果每一个函数依赖的决定因素都包含键,则R属于BCNF范式。
例题:
模式分解
如何确定一个关系是不是无损分解步骤:
计算R1、R2的交集x,R1-R2的差集y,R2-R2的差集z,那么结果中x->y和x->z包含R的关系就是无损分解,如果不包含就是有损分解。