第2部分:关系数据库设计题型

第2部分:关系数据库设计题型:选择题、填空题、证明题、设计题分值:约35%

 

第4章:概念数据库设计

要求:准确掌握基本概念、熟练使⽤建模⼯具设计概念数据库模型

数据库设计的基本过程:

概念设计到逻辑设计到物理设计

img

概念模型设计:实体-联系(E-R)模型:

img

与实体相关的概念(实体、属性、属性的分类、键、实体型、实体集)

实体:现实世界中的对象在数据库中的形式

属性:刻画实体的抽象特性

img

属性分类:

  • 复合属性:多个属性一起

  • 多值属性:一个属性的多种取值

img

实体型相关(实体型、实体集、键属性)

  • 将相同属性的实体构成一个类型就是实体型

  • 实体型的对象实例的集合交实体集

img

img

与联系相关的概念(联系、联系型、联系集、联系型的属性、联系型的度、联系型的基数⽐、联系型的参与度)

联系相关

  • 联系就说实体之间的关系

  • 联系型是类型 联系集是集合

  • 联系型的度是关系到的实体的个数

img

img

img

多元联系 一般不等价

img

 

img

 

img

基数比 靠近哪一方,那一份出对应比例的实体个数与另一边对应

img

存在依赖/参与度约束 :是否全部参与

img

弱实体型(弱实体型、部分键、标识实体型、标识联系型)

img

img

第5章:逻辑数据库设计

  • 要求准确掌握基本概念

  • 熟练地将概念数据模型转换为关系数据库模式

  • 熟练进⾏函数依赖的推理,

  • 判断函数依赖集的等价性/覆盖性,

  • 计算最⼩覆盖等

  • 熟练判断关系模式的范式级别

  • 熟练判断关系模式分解是否满⾜⽆损连接性或函数依赖性

概念数据模型转换为关系数据库模式:

实体型的转换、

img

复合属性的转换:展开即可

img

多值属性的转换:再定义一个多值属性的关系

img

M:N联系型的转换:

无法省略联系型关系,将两个实体型的主键作为联系型的主键即可

img

1:N联系型的转换、

将基数为1的一方的主键,放到N的一方里面,同时进行外键约束

img

img

1:1联系型的转换、

  • 要注意联系型属性的划分是否合理

img

二元联系型自转

img

标识联系型转换

  • 不用转了,因为弱实体型中的外键可以看作标识联系型

img

弱实体型的转换

  • 主键是属主实体型的主键+弱实体型的部分键,同时建立外键

img

综上:

img

函数依赖:

函数依赖的概念

  • X决定Y,Y依赖于X

img

img

平凡函数依赖、

img

完全函数依赖、

img

部分函数依赖:与完全依赖相反

img

传递函数依赖(反之就是直接依赖)

img

逻辑蕴含:F包含了一个函数依赖

img

Armstrong公理

img

img

Armstrong的导出规则

合并和分解互为逆;

img

 

属性集的闭包

img

函数依赖的推理、

https://blog.csdn.net/nailuoch/article/details/94010099

 

函数依赖集的闭包、

img

计算属性值闭包

img

img

等价函数依赖集、

img

img

函数依赖集的覆盖、

img

判定等价函数依赖集

img

最⼩函数依赖集/最小覆盖

img

img

总结

image-20220514175032489

范式:

  • 只要记住,1NF到2NF消除非主属性的部分依赖,2NF到3NF消除非主属性的传递依赖,3NF到BCNF消除主属性的部分和传递依赖就行了

1NF的定义、

img

  • 由于1NF 非主属性部分依赖于候选键,导致了很多问题;Sdept,sname和Cno无关

img

2NF的定义、

  • 2NF中有非主属性传递依赖于候选键,所以也有一堆问题

img

3NF的定义、

  • 3NF中有主属性传递或部分依赖于其它候选键,也有很多问题

img

BCNF的定义

img

img

 

img

关系模式分解:

关系模式分解的概念、

img

img

img

img

img

⽆损连接分解、

img

img

img

保持函数依赖的分解、

img

img

img

⽆损连接分解的判定(分解为两个关系模式的情况)、

  • 看两个分解交集的那部分,是否至少能决定一种一个,如果能,说明连接的时候能固定住,达到无损连接

img

img

函数依赖保持性判定

对每个X—>Y,在每个U中,X取交集再求F闭包,再和U取交集,这些属性是在U中保持主依赖的

img

img

3NF分解算法、

  • 先看最小覆盖合并后,是否一个候选键能推出除自己外的所有属性,此时所有非主属性一定完全且直接依赖于候选键,直接返回原集合

  • 不是的话进行分解:先将候选键分解出去,因为这些不涉及非主属性,可以直接拿走。

  • 再将所有最小函数依赖分解出来,这样一定满足第一点要求

  • 最后再看是否冗余,进行去重

img

img

BCNF分解算法(无损连接分解)

利用增广率可以得到

img

第6章:物理数据库设计

img

要求准确掌握基本概念

索引设计:

索引设计的准则(应该不考)

img

img

img

img

img

img

img

img

img

img

img

img

img

img

img

img

img

索引的功能、

img

索引的类型(聚簇索引、⾮聚簇索引、主索引、辅助索引、唯⼀索引、稠密索引、稀疏索引)、

有序索引和哈希索引

img

img

img

有序索引分类

聚簇和非聚簇

img

img

img

索引组织表

img

稠密和稀疏索引

img

img

img

主索引和二级索引(辅助索引)

img

img

img

唯一索引和外键索引

img

img

创建索引的⽅法

img

img

img

img

img

关系模式的优化:

规范的关系模式设计存在的问题

img

img

关系的划分:

⽔平划分:有点像外模式

img

垂直划分:

  • BCNF继续分解成小的BCNF达到查询快的目的

 

posted @ 2022-05-14 18:39  我不是k  阅读(434)  评论(0编辑  收藏  举报