数据库系统
在案例分析中也有考察数据库系统
选择题考点:
三级模式两级映像
数据库设计(6个阶段)
E-R模型
关系模型
关系代数
函数依赖
键与约束
范式
模式分解
并发控制
封锁协议
分布式数据库
数据仓库
反规范化技术
大数据
SQL语言
数据库系统
了解就行,不考
关系模型数据库有:mysql,sqlserver等(基于表)
数据库管理系统属于数据库系统中的软件部分。
三级模式两级映像
外模式:视图
模式(概念模式):基本表
内模式:存储文件
为了保证上层的应用程序不发生修改,从而有两级映射
表中数据修改,使用外模式-模式 (逻辑独立性)
存储文件修改,使用模式-内模式映射 (物理独立性)
数据库设计
关注点:步骤,产出物,内容
在概念结构设计时,将分ER图合并时,三种冲突考察过
属性冲突
命名冲突
结构冲突
真题
C
A
A
C
下一个阶段需要所有前面所有的阶段做为支持
数据模型
逻辑结构设计阶段的工作。
数据模型三要素考试考察过:数据结构,数据操作,数据完整性约束
概念数据模型
考察重点
注意ER图中联系的类型的判断
弱实体的例子如下:
员工是强实体
经理,业务员,部门经理是弱实体
码:键(主键)
三个实体之间的联系
拆分为两个实体之间的联系来看
一个课程有多个参考书
一个参考书只有一个课程
一个课程有多个教师
一个教师只教一门课程
逻辑数据模型
ER模型转换为关系模型的方法
转换为关系模式的是强实体
联系就按照联系的类型来判断是否转换为独立的关系模式或者作为属性添加到实体的一端
真题
c
教师和课程是一对多
a
家长实体和进修学生实体都是弱实体
c
d
b
自然连接:
关系代数
笛卡尔积,投影,选择是考点
自然连接也是考点
相同的属性列只显示一次
显示两个关系模式中属性相同且值相同的记录
自然连接和笛卡尔积之间的转换
b
d
在关系代数中,数字不用加引号,字符才需要加引号
笛卡尔积转换为自然连接分两步:行选择,列选择
最后加上自然连接中的选择运算符号,为最终的结果。
函数依赖
函数依赖的公理系统
x->y 就是x决定y
键和码是一个意思
一般来说只有一个候选键,即:主键=候选键
范式
考察重点
3NF考察的多
存在小表
依赖关系书写错了,应该是:学号->学生姓名,学号->所在系 ,所在系->系主任名称,学号->课程号,(学号,课程号)->成绩
这个关系模式的主键为:(学号,课程号)
消除了非主属性对主键的部分函数依赖
部分函数依赖存在于联合主键中
在上面的例子中
主键为:(学号,课程号)
非主属性学生姓名,存在对主键的部分函数依赖(学号->学生姓名),
因此,不属于二范式
消除非主属性对码的传递函数依赖,就达到了第三范式
BC范式考察较少
消除主属性对码 (主键) 的部分函数依赖和传递函数依赖,达到BCNF
上面例子中,候选键有两种:(S,T)和(S,J)
属于候选键中的属性都是主属性,因此:S,T,J都是主属性
满足BCNF的条件
c
a
求候选键(码):
本题中, A,D没有在右边出现过,因此,AD必然存在于候选关键字中。ADB
ADC
在候选码中的属性都是主属性,因此ABCD都是主属性。
a
d
先求候选码:
因此,主属性:E,M 非主属性:N, Q, L
判断是否为2NF
看是否存在非主属性对码的部分函数依赖
模式分解
保持函数依赖分解
保持函数依赖的第一种判断方法(使用)
保持函数依赖的第二种判断方法(不用使用)
使用方法一判断,没有保持函数依赖。
(一般来说,使用方法一判断就行)
无损分解
就是将原来的属性还原出来
R1交R2决定R2-R1或者R1-R2
由于分解为了三个关系模式,故使用表格法:
解题的书写步骤为:
注意,如果分解为3或3个以上的关系模式,使用表格法,不能将某一列所有的行都大勾,则为有损分解
A
D
关于无损连接性
关于函数依赖
并发控制
事务的四大特性
并发控制的三大问题
封锁协议
一级封锁协议解决丢失更新的问题
如果需要修改数据:加写锁(X锁)
如果需要读数据:加读锁(S锁)
如果需要修改数据:加写锁(X锁)
如果需要读数据:加读锁(S锁)
如果需要修改数据:加写锁(X锁)
如果需要读数据:加读锁(S锁)
这种封锁协议的题目直接看操作:
如果需要修改数据:加写锁(X锁)
如果需要读数据:加读锁(S锁)
c
d
c
加了共享锁还能加共享锁
加了排他锁不能再加排他锁
数据库的安全
了解就行
数据库备份
分布式数据库
物理上处于不同的位置,但是逻辑上是一个整体
数据仓库
用于大数据技术的数据仓库
例如:分析用户服装消费变化的数据仓库
数据仓库的4个层次
这四个层次是考察点
数据源通过ETL转换,将异构的数据源转换为数据仓库
OLAP对数据进行挖掘和分析
商业智能
记住商业智能的4个阶段
反规范化
之前的规范化操作,将1NF转换为2NF,3NF,BCNF
如果规范化程度太高,导致表很细,不利于数据的查询
使用反规范化,降低规范化程度
大数据
c
日志文件:记录数据库的操作
b
c
SQL语言
创建,修改,删除表(不考)
增删改查考察较多
过一下就行
a
先找主键,主键为:(零件号,供应商号)
存在非主属性对码的部分函数依赖
a
d
查询的是各种零件的库存,因此使用零件号分组
将关系代数和SQL结合在一起
C
A
D
B
一共7列
自然连接转SQL语句
先选择列
在选择表
在写条件(自然连接的条件是相同行属性列连接在一起),sql语句中,表的连接做的是笛卡尔积
(相当于做自然连接到笛卡尔积的转换)
条件包括自然连接的条件和附加条件