课程内容提要
三级模式-两级映射
数据库的产品很多,数据的存储结构也各不相同,但体系结构基本上都具有相同的特征,采用“三级模式和两级映像”
数据库设计过程
DBMS数据库管理系统
E-R模型
矩形表示实体,椭圆表示属性,菱形表示联系
解答:C
一个实体转换成一个关系模式,这里就有3个。联系是一个多对多的情况,则至少需要1个关系模式,所以最少需要4个关系模式
关系代数
主要考察的是笛卡尔积,投影,选择,联接。 这里注意区分笛卡尔积和联接
投影操作和投影操作的下标表示可以是数字,代表第几列
一般连接操作的下面跟连接的条件,如s1no = s2no
(等值连接) , 不写条件的联接称为自然联接
规范化理论
规范化理论-函数依赖
规范化理论-价值与用途
规范化程度并不是越高越好,规范化程度的提高往往伴随着性能的下降。就好比安全性一样,安全措施越高会导致访问的困难程度越大。
规范化理论-键
扩展了解:超键和候选键都是可以唯一标识元祖,但是候选键不存在多余属性。如学号和课程号是超键,但是学号可以唯一标识学生,课程号不是必须的,所以候选键就是学号
规范化理论-求候选键
解答:
例1:选A (对应求候选键方法1)
例2:填ABCD (对应求候选键方法2)
例3: 选B
规范化理论-范式*
要达到更高等级的范式,需要先到达底一级的范式。
SNO: 学生号(Student ID) CNO:课程号(Course ID)
GRADE: 成绩 CREDIT: 学分
这里主键是SNO+CNO,当确定SNO和CNO的时候就可以确定GRADE,但是因为存在非主属性CREDIT部分依赖于主键CNO,所以不满足第二范式,(每个课程的学分是固定的)。解决方法是把CNO和CREDIT提取到另外的关系模式中,通过外键引入。
说明:简单说,码就是主属性。能代表这个实体的属性。
所谓码就是能唯一标识实体的属性,他是整个实体集的性质,而不是单个实体的性质。它包括超码,候选码,主码。
单个主键不会存在非主属性对主键的部分依赖,因此这里也是满足第二范式的。
这里DNAME(系名称)和LOCATIONN(地址)传递依赖于 DNO(系号)
解决方法是把DNO,DNAME和LOCATION提取到另外的关系模式中,通过外键引入。
消除主属性对候选键的传递依赖。
解答:D D A
第三范式要求满足第一范式(关系模式R的每一个分量是不可再分的数据项)和第二范式(满足1NF同时消除了非主属性对码的部分函数依赖), 并且不存在非主属性对码的传递依赖
部门关系中, 属性“部门号”, “部门名”, “负责人“, “电话”都是不可再分的,所以满足第一范式(1NF)。另外这里的码(主属性)只有一个部门号,不存在其他非主属性对码的部分函数依赖(只有一个主属性是没有办法部分依赖的),满足第二范式(2NF)。另外这里传递依赖并不好看出来,但是满足传递依赖就是第三范式了(3NF),所以这里选D。
这里后两个空稍微没有那么好推断出来。只能从实际上来说,表4是相对的主属性应该是职工,所以应该修改表3,增加一个部门号作为外键关联职工的部门信息。第二个选D。 增加销售关系模式,通知职工号和商品号以及数量可以确定月销售额。因此最后一空可以排除CD,至于B因为存在冗余信息商品名称,不是一个好的关系模式,故选A
规范化理论-模式分解
保持函数依赖分解:如R(A,B,C)关系模式有A->B, B->C的依赖关系,故保持函数依赖分解可以分解为R(A,B), R(B,C)的两个关系模式,依赖关系并没有改变。
解答: 是
书中介绍了两种判断是否为无损分解的方法 — 公式法和表格法。 这里例题是用的表格法。后面会讲到公式法。
首先列出初始表格,行是初始关系模式的属性,列是分解后的关系模式名称。当子模式存在初始关系模式中的属性时标识a, 否则标识b。 然后根据依赖关系,将子模式中函数依赖部分满足的补全都改成a,当存在某一行能够全部是a的时候就可以说满足无损分解了。
判断无损分解方法2 — 公式法
公式法的局限性只能分解成两个子模式,如果不是两个子模式就不适用了。
解答: 第一个是无损分解,第二个不是
并发控制
基本概念
事务把多个操作封装起来作为整体操作,因为一些操作有时候具有很强的关联性,必须要不全做完,要不全不做,如银行转账。主要有四大特性:原子性,一致性,隔离性,持续性。
存在的问题示例
T1和T2是两个事务, ROLLBACK回滚
封锁协议
X锁(写锁,加上去之后不能加其他任何锁) S锁(读锁,加上去之后还可以加其他锁)
数据库完整性约束
实体完整性约束:主键不能为空且不能重复
参照完整性约束:外键允许为空,但是非空的时候必须对应其他关系表中的主键
用户自定义完整性约束:用户自定义属性需要满足的条件
上面三种完整性约束只适用于简单的情况,对于复杂的情况可以通过触发器编写脚本去约束。
数据库安全
数据备份
下面是一个简单的数据备份方案。因为增量备份的恢复要先恢复上一个完整备份,然后恢复当前增量备份前的各个增量备份,如此如果增量备份多需要操作的次数就多了。因此可以在周四引入差量备份,当周四出现问题只需要恢复完整备份和差量备份就可以了。
数据库故障与恢复
数据仓库与数据挖掘
BI
数据仓库面向主题而不是业务,相对稳定性是因为数据不会经常更改
数据集市: 对数据分割,完成后整合
OLAP服务器: 联机分析处理服务器
数据挖掘方法分类
反规范化
大数据
本文链接: http://www.ionluo.cn/blog/posts/975e707d.html
版权声明: 本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。转载请注明出处!