目录
一、数据库基础
1.1 基础概念
1.2 三级模式-两层映射
1.3 数据库设计
1.4 数据模子
1.4.1 关系模子
1.4.2 E-R模子
1.4.3 E-R模子转关系模子
1.5 关系代数
二、关系数据库
2.1 函数依靠
2.2 函数依靠的公理体系
2.3 键与约束
2.4 范式
2.5 反规范化技术
2.6 模式分解
真题练习
相干保举
一、数据库基础
1.1 基础概念
- 1.数据(Data):是描述事物的符号记载,它具有多种表现形式,如文字、图形、图像、声音和语言等。
- 2.数据库体系(DataBaseSystem,DBS):是一个采用了数据库技术,有组织地、动态地存储大量相干联数据,从而方便多用户访问的计算机体系。
- 3.数据库(DataBase,DB):是统一管理的、长期储存在计算机内的,有组织的相干数据的集合。
- 数据库的基本特征:
- 数据按肯定的数据模子组织、描述和存储;
- 可为各种用户共享;
- 冗余度较小;
- 数据独立性较高;
- 易扩展。
- 4.数据库管理体系(DataBase Management System,DBMS):是一个采用了数据库技术,有组织地、动态地存储大量相干数据,方便多用户访问的计算机体系。其由下面四个部分构成:
- 数据库(统一管理、长期存储在计算机内的,有组织的相干数据的集合)
- 硬件(构成计算机体系包括存储数据所需的外部装备)
- 软件(操纵体系、数据库管理体系及应用程序)
- 人员(体系分析和数据库设计人员、应用程序员、最终用户、数据库管理员DBA)
- 5.DBMS 通常分三类
- 关系数据库体系(Relation DataBase System,RDBS);
- 面向对象的数据库体系(Object-OrientedDataBase Systems,OODBS);
- 对象关系数据库体系(Obiective Relational DataBase System,ORDBS)。
- 6.数据库管理体系DBMS的功能
- 实现对共享数据有效的组织、管理和存取。
- 包括数据定义、数据库操纵、数据库运行管理、数据的存储管理、数据库的建立和维护等。
- 7.数据模子三要素:数据结构、数据操纵、数据的约束条件。其中,数据的约束条件包括:
- 1.实体完整性。实体完整性是指实体的主属性不能取空值。
- 2.参照完整性。在关系数据库中主要是指外键参照的完整性。若 A 关系中的某个大概某些属性参照B 关系或其他几个关系中的属性,那么在关系A 中该属性要么为空,要么必须出如今 B关系大概其他的关系的对应属性中。
- 3.用户定义完整性。用户定义完整性反映的是某一个详细应用所对应的数据必须满足肯定的约束条件。例如,软考结果不能小于 0,也不能大于 75。
1.2 三级模式-两层映射
- 内模式:管理如何存储物理的数据,对应详细物理存储文件。
- 模式:又称为概念模式,就是我们通常使用的基本表,根据应用、需求将物理数据划分成一张张表。
- 外模式:对应数据库中的视图这个级别,将表举行肯定的处理后再提供给用户使用。
- 外模式一模式映像:是表和视图之间的映射,存在于概念级和外部级之间,若表中数据发生了修改,只需要修改此映射,而无需修改应用程序,包管逻辑独立性。
- 模式一内模式映像:是表和数据的物理存储之间的映射存在于概念级和内部级之间,若修改了数据存储方式,只需要修改此映射,而不需要去修改应用程序,包管物理独立性。
这两级映像包管了数据库中的数据具有较高的逻辑独立性和物理独立性。
1.3 数据库设计
- 1.需求分析:即分析数据存储的要求,产出物有数据流图、数据字典、需求说明书。得到用户对体系的三个要求:信息要求、处理要求、体系要求。
- 2.概念结构设计:就是设计E-R图,也即实体-接洽图。工作步骤包括:选择局部应用、逐一设计分E-R图、E-R图合并。分E-R图举行合并时,它们之间存在的冲突主要有以下 3 类。
- 属性冲突。同一属性可能会存在于差别的分E-R 图中。
- 命名冲突。相同意义的属性,在差别的分E-R图上有着差别的命名或是名称相同的属性在差别的分E-R 图中代表着差别的意义。
- 结构冲突。同一实体在差别的分E-R 图中有差别的属性,同一对象在某一分E-R 图中被抽象为实体而在另一分E-R 图中又被抽象为属性
- 3.逻辑结构设计:将E-R图,转换成关系模式。工作步骤包括:确定命据模子、将E-R 图转换成为指定的数据模子、确定完整性约束和确定用户视图。
- 4.物理设计:步骤包括确定命据分布、存储结构和访问方式。
- 5.数据库实施阶段:根据逻辑设计和物理设计阶段的结果建立数据库,体例与调试应用程序,组织数据入库,并举行试运行。
- 6.数据库运行和维护阶段:数据库应用体系颠末试运行即可投入运行,但该阶段需要不断地对体系举行评价、调整与修改。
1.4 数据模子
1.4.1 关系模子
- 关系模子是二维表的形式表示的实体-接洽模子,是将实体-接洽模子转换而来的,颠末开辟人员设计的;
- 概念模子是从用户的角度举行建模的,是现实世界到信息世界的第一抽象是真正的实体-接洽模子。
- 网状模子表示实体范例及着实体之间的接洽,一个事物和别的几个都有接洽形成一张网。
- 面向对象模子是采用面向对象的方法设计数据库,以对象为单元,每个对象包括属性和方法,具有类和继承等特点。
- 数据模子三要素:
- 数据结构(所研究的对象范例的集合);
- 数据操纵(对数据库中各种对象的实例答应执行的操纵的集合);
- 数据的约束条件(一组完整性规则的集合)。
1.4.2 E-R模子
用E-R图来描述概念数据模子,世界是由一组称作实体的基本对象和这些对象之间的接洽构成的。
在E-R模子中,使用椭圆表示属性(一样平常没有)、长方形表示实体、菱形表示接洽,接洽的两端要填写接洽范例,示例如下图:
- 实体:客观存在并可相互区别的事物。可以是详细的人、事、物或抽象概念如人、汽车、图书、账户。
- 弱实体和强实体:弱实体依靠于强实体的存在而存在。
- 实体集:具有相同范例和共享相同属性的实体的集合,如门生、课程。
- 属性:实体所具有的特性。
- 属性分类:
- 简单属性和复合属性;
- 单值属性和多值属性;
- NULL属性;
- 派生属性。
- 域:属性的取值范围称为该属性的域。
- 码(key):唯一标识实体的属性集。
- 接洽:现实世界中事物内部以及事物之间的接洽,在E-R图中反映为实体内部的接洽和实体之间的接洽。
- 接洽范例:一对一1:1、一对多1:N、多对多M:N。
1.4.3 E-R模子转关系模子
E-R模子转换为关系模子:每个实体都对应一个关系模式;接洽分为三种:
- 1:1接洽中,接洽可以放到任意的两端实体中,作为一个属性(要包管1:1的两端关联),也可以转换为一个单独的关系模式;
- 1:N的接洽中,接洽可以单独作为一个关系模式,也可以在N端中加入1端实体的主键;
- M:N的接洽中,接洽必须作为一个单独的关系模式,其主键是M和N端的联合主键。
1.5 关系代数
- 并:结果是两张表中所有记载数合并,相同记载只显示一次。
- 交:结果是两张表中相同的记载。
- 差:S1-S2,结果是S1表中有而S2表中没有的记载。
- 笛卡尔积(X):S1XS2,产生的结果包括S1和S2的所有属性列,而且S1中每条记载依次和S2中所有记载组合成一条记载,最终属性列为S1+S2属性列,记载数为S1XS2记载数。
- 投影(σ):现实是按条件选择某关系模式中的某列,列也可以用数字表示。
- 选择(π):现实是按条件选择某关系模式中的某条记载。
- 毗连:
- 等值毗连:选取关系 S1、S2,取两者笛卡儿积中属性值相等的元组。
- 自然毗连:一种特别的等值毗连,它要求比力的属性列必须是相同的属性组,而且把结果中重复属性去掉。
二、关系数据库
2.1 函数依靠
函数依靠是一种最重要、最基本的数据依靠。而关系数据库设计理论的核心就是数据间的函数依靠。
函数依靠又可扩展以下两种规则:
- 部分函数依靠:A可确定C,(A,B)也可确定C,(AB)中的一部分(即A)可以确定C,称为部分函数依靠。
- 通报函数依靠:当A和B不等价时,A可确定B,B可确定C,则A可确定C,是通报函数依靠;若A和B等价,则不存在通报,直接就可确定C。
2.2 函数依靠的公理体系
函数依靠的公理体系(Armstrong 公理体系):从已知的一些函数依靠,可以推导出别的-些函数依靠,这就需要一系列推理规则,这些规则常被称作“Armstrong 公理”。
设关系式 R(U,F),U 是关系模式R 的属性集,F是 U上的一组函数依靠,则有以下三条推理规则:
- 自反律:若 Y⊆X⊆U,则X→Y 为F所蕴含。
- 增广律:若x→Y为F所蕴含,且Z⊆U,则XZ→YZ 为F所蕴含
- 通报律:若 X→Y,Y→Z 为F所蕴含,则X→Z 为F所蕴含。
根据上面三条推理规则,又可推出下面三条推理规则:
- 合并规则:若 X→Y,X→Z,则 X→YZ 为 F 所蕴含。
- 伪通报规则:若 X→Y,WY→Z,则 XW→Z 为 F 所蕴含。
- 分解规则:若 X→Y,Z⊆Y,则 X→Z 为 F 所蕴含。
2.3 键与约束
- 超键:能唯一标识此表的属性的组合。
- 候选键:超键中去掉冗余的属性,剩余的属性就是候选键。
- 主键:任选一个候选键,即可作为主键。
- 外键:其他表中的主键。
- 主属性:候选键内的属性为主属性,其他属性为非主属性。
完整性约束
- 实体完整性约束:即主键约束,主键值不能为空,也不能重复
- 参照完整性约束:即外键约束,外键必须是其他表中已经存在的主键的值大概为空。
- 用户自定义完整性约束:自定义表达式约束,如设定年事属性的值必须在18到75之间。
2.4 范式
关系数据库设计的方法之一就是设计满足得当范式的模式,通常可以通过判断分解后的模式到达几范式来评价模式的规范化水平。范式包括:1NF、2NF、3NF、BCNF、4NF、5NF。
根据体系架构设计师测验的要求,这里重点介绍 1NF、2NF、3NF、BCNF的基本概念。
- 第一范式(1NF):若关系模式 R 的每一个分量是不可再分的数据项,则关系模式 R 属于第一范式。
不属于第一范式
属于第一范式
- 第二范式(2NF):若关系模式 R属于1NF,且每一个非主属性完全依靠主码时(消除部分依靠),则关系式R 是 2NF(第二范式)。
- 第三范式(3NF):当 2NF 消除了非主属性对主码的通报函数依靠,则称为 3NF。
- BC 范式(BCNF):如果关系模式 R属于1NF,且每个属性都不通报依靠于 R 的候选码,那么称 R 是 BCNF 模式。
上述 4 种范式之间有如下接洽:BCNF⊂3NF⊂2NF⊂1NF。
2.5 反规范化技术
- 反规范化技术:规范化设计后,数据库设计者盼望牺牲部分规范化来提高性能。
- 采用反规范化技术的益处:
- 低落毗连操纵的需求;
- 低落外码和索引的数目;
- 可能淘汰表的数目;
- 能够提高查询服从。
- 可能带来的题目:
- 数据的重复存储,浪费了磁盘空间;
- 可能出现数据的完整性题目,为了保障数据的划一性,增加了数据维护的复杂性,会低落修改速率。
- 详细方法
- (1)增加冗余列:在多个表中保留相同的列,通过增加数据冗余淘汰或避免查询时的毗连操纵。
- (2)增加派生列:在表中增加可以由本表或其它表中数据计算生成的列,淘汰查询时的毗连操纵并避免计算或使用集合函数。
- (3)重新组表:如果很多用户需要检察两个表毗连出来的结果数据,则把这两个表重新构成一个表来淘汰毗连而提高性能。
- (4)水中分割表:根据一列或多列数据的值,把数据放到多个独立的表中,主要用于表数据规模很大、表中数据相对独立或数据需要存放到多个介质上时使用。
- (5)垂直分割表:对表举行分割,将主键与部分列放到一个表中,主键与其它列放到另一个表中,在查询时淘汰I/0次数。
2.6 模式分解
范式之间的转换一样平常都是通过拆分属性,即模式分解,将具有部分函数依靠和通报依靠的属性分离出来,来到达一步步优化:
- 保持函数依靠分解
- 对于关系模式R,有依靠集F,若对R举行分解,分解出来的多个关系模式,保持原来的依靠集不变,则为保持函数依靠的分解。别的,注意要消撤除冗余依靠(如通报依靠);
- 保持函数依靠的判断
- 如果F上的每一个函数依靠都在其分解后的某一个关系上建立,则这个分解是保持依靠的(这是一个充实条件),看函数每个依靠的左右两边属性是否都在同一个分解的模式中。
实例:设原关系模式R(A,B,C),依靠集F(A->B,B->C,A->C),将其分解为两个关系模式R1(A,B)和R2(B,C),此时R1中保持依靠A->B,R2保持依靠B->C,说明分解后的R1和R2是保持函数依靠的分解,由于A->C这个函数依靠现实是一个冗余依靠,可以由前两个依靠通报得到,因此不需要管。
- 无损分解:分解后的关系模式能够还原出原关系模式,就是无损分解,不能还原就是有损。
- 当分解为两个关系模式,可以通过以不定理判断是否无损分解:定理:如果R的分解为p={R1,R2),F为R所满足的函数依靠集合,分解p具有无损毗连性的充实必要条件是R1nR2->(R1-R2)大概R1nR2->(R2-R1)。
- 当分解为三个及以上关系模式时,可以通过表格法求解,如下:
真题练习
- 3.1 若关系R、S如下图所示,则关系R与S举行自然毗连运算后的元组个数和属性列数分别为(a);关系代数表达式π1,4(σ3=6(RxS))与关系代数表达式(b)等价。
- 3.2 给定关系模式 R(U,F),其中:属性集 U={A1,A2,A3,A4,A5,A6},函数依靠集 F={A1->A2,A1->A3,A3->A4,A1A5->A6}。关系模式R的候选码为(a),由于R存在非主属性对码的部分函数依靠,所以R属于(b)。
- A.A1A3 B.A1A4
- C.A1A5 D.A1A6
- A.1NF B.2NF
- C.3NF D.BCNF
复制代码
- 3.3
- 3.4 在数据库设计的需求分析阶段应完成包括()在内的文档。
- A.E-R图
- B.关系模式
- C.数据字典和数据流图
- D.任务书和设计方案
答案
- 3.1 D、C
- 解析:先辈行自然链接,得到C=1且D=5,或 C=7且D=4,得到结果元组个数3,列数为4,如下图:
- 先辈行笛卡尔积,π表示1,4列,σ表示第3列的值(R.C)=第6列的值(S.D)。
- 3.2 C、A
- 解析:存在非主属性对码的部分函数依靠,所以不满足2NF,是1NF。
- 3.3 C
- 3.4 C
相干保举
【体系架构设计师】四、嵌入式基础知识(体系结构|嵌入式体系|多核处理器)-CSDN博客文章欣赏阅读852次,点赞12次,收藏17次。冯·诺依曼结构的计算机程序和数据共用一个存储空间,程序指令存储地点和数据存储地点指向同一个存储器的差别物理位置。哈佛结构是一种并行体系结构,它的主要特点是将程序和数据存储在差别的存储空间中,即程序存储器和数据存储器是两个相互独立的存储器每个存储器独立编址、独立访问。_嵌入式软件架构师知识框架https://shuaici.blog.csdn.net/article/details/139835250 【体系架构设计师】三、数据库体系(事件并发|封锁协议|数据库安全|商业智能|SQL语句)-CSDN博客文章欣赏阅读1.1k次,点赞27次,收藏12次。事件是并发控制的条件条件,并发控制就是控制差别的事件并发执行,提高体系服从,但是并发控制中存在下面三个题目:丢失更新:事件1对数据A举行了修改并写回,事件2也对A举行了修改并写回此时事件2写回的数据会覆盖事件1写回的数据,就丢失了事件1对A的更新。即对数据A的更新会被覆盖。不可重复读:事件2读A,而后事件1对数据A举行了修改并写回,此时若事件2再读A,发现数据不对。即一个事件重复读A两次,会发现数据A有误。读脏数据:事件1对数据A举行了修改后,事件2读数据A,而后事件1回滚,数据A规复了原来的。https://shuaici.blog.csdn.net/article/details/139778680
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |