数据库的层次和视图:
模式:数据库中全体数据的逻辑结构和特征的描述,一个数据库只有一个模式
外模式:(子模式(Subschema)或用户模式), 可以保证数据安全,
内模式:数据在数据库内部的表示方式(例如,记录的存储方式是顺序存储、按照B树结构存储还是按hash方法存储;索引按照什么方式组织;数据是否压缩存储,是否加密;数据的存储记录结构有何规定)。一个数据库只有一个内模式、
例题:
①视图-》外模式、存储文件-》内模式、基本表-》模式
透明性:
分片透明:数据是如何分片,对数据的操作在全局关系上
复制透明:用户不关心数据库在网络中各个节点的复制情况
位置透明:用户不关心所操作的数据在何处,数据分配到哪个站点存储
逻辑透明:用户不关心DBMS 支持哪种数据模型、数据操纵语音,均有系统完成
例题:
①位置透明-》物理存储/存储位置、分块存储-》分片透明、
.
OLAP(On-line Analytical Processing,联机分析处理)
要用于多维数据分析和数据挖掘,侧重分析决策。
OLTP(OnLine Transaction Processsing 联机事务处理)
高并发场景下低时延的查询和处理效率
.
数据库的运算:
1.笛卡尔积(×):将2个表数据全部组合
例如,表一:12,表二:34,则笛卡尔积为13,14,23,24,即所有列都组合一起,而且不同的数据都需要组合。见下图:
2.连接ᐅᐊ(自然连接):先把2个表笛卡尔积,然后再选择出相同属性列中相同的数据(去除重复列)
3.投影(π):选定当前表的指定列
4.选择(σ):直接通过指定条件选择当前表
例题:
主要考察等式变换,数据结果表,
.
ER图:
当两个实体为多对多时,则改关系模式的关键字为多个实体的关键字组成,同时加入联系实体
关系模式转换规则:如果一对多关系不转换为关系模型,则需要在多端加入一端的主键。
派生属性:即可以通过一个属性推倒出另一个属性,例如出生日期可以推导出
多值属性:改属性的值不止一个,例如有多个爱好
.
SQL语句:
①赋权限:grant 权限(属性列)on table to usr [with grant option ] 是否可以赋权限给与他人
②保证实时更新:[with check option ],确保数据表更新后,视图也可以更新
重新命名规则:oldName as newName
升序:ase
降序:desc
.
函数推理规则:
概念:从已知的一些函数依赖,可以推导出另外一些函数依赖,这就需要一系列推理规则,这些规则常被称作“Armstrong 公理”
自反律:大子集中[学号,学院] -》 推导出小子集:学院
增广律:如果X-> Y,且Z属于U,则XZ->YZ。**注意:XZ 表示 X∪Z,YZ 表示 Y∪Z。**
传递律:如果X->Y,Y->Z, 则X->Z
再推理规则:
合并:如果X->Y ,Y->Z ,则X->YZ。
分解:如果 X→Y,Z ⊆Y,则 X→Z。
伪传递:X->Y,WY->Z,则XW->Z。
引理:X→A1A2…Ak 成立的充要条件是 X→Ai 成立(i=1,2,…,k)。
X->ZY, 则X->Z 与 X-> Y
例题: 设有关系模式 R,A、B、C、D、E、F 是它的属性集的子集,R 满足函数依赖{A→BC,CD→EF},证明函数依赖 AD→F 成立。
证明:
A→BC 题中给定
A→C 引理
AD→CD 增广律
CD→EF 题中给定
AD→EF 传递律
AD→F 引理
.
范式:
- 1范式: 关系模式中,每个属性都是不可再分的数据项
- 2范式: 满足1范式的前提下,任意一个非主属性,都依赖于任意一个主属性,则成为2范式
- 3范式: 满足2范式的前提下,任意一个非主属性,都不存在对主属性或者非主属性的传递依赖,则称为3范式
- BCD范式:不存在主属性对码(主键)的部分依赖(主属性和非主属性都不存在对码的部分依赖和传递依赖)
主属性:包含在任意一个候选码中的属性,称为主属性,否则为非主属性