章节 | 章节 |
---|---|
01 - 计算机组成原理和系统结构 | 07 - 法律、法规和标准化 |
02 - 操作系统的基本原理 | 08 - 多媒体基础 |
03 - 数据库系统 | 09 - 软件工程 |
04 - 计算机网络 | 10 - 面向对象 |
05 - 数据结构与算法 | 11 - 基础知识例题 |
06 - 语言和语言处理程序的基础 | 12 - 案例分析例题 |
文章目录
- 一、三级模式-两级映射
-
- 1.1、三级模式
- 1.2、两级映像
- 二、数据库设计过程
- 三、ER模型
- 四、关系代数
- 五、规范理论
-
- 5.1、函数依赖
- 5.2.价值与用途
- 5.3、键
- 5.4、求候选键
- 5.5、范式
-
- 5.5.1、第一范式
- 5.5.2、第二范式
- 5.5.3、第三范式
- 5.5.4、BC范式
- 5.6、例题
- 5.7、模式分解
- 六、并发控制
-
- 6.1.并发控制造成的问题
- 6.2、封锁协议
- 七、完整性约束
- 八、数据库安全
- 九、数据库备份
- 九、数据仓库和数据挖掘
-
- 9.1、数据仓库
- 9.2.数据挖掘方法
- 十、反标准化
- 十一、大数据基本概念
一、三级模式-两级映射
1.1、三级模式
-
模式:也称为概念模式,是对数据库中所有数据的逻辑结构和特征的描述。只涉及类型的描述,而不涉及特定值。概念模式的特定值称为模式的例子,同一模式可以有许多例子。描述模式的数据定义语言为:模式DDL。
-
外部模式:又称用户模式或子模式,是用户与数据库系统的接口,是用户所看到的数据的描述。 描述外模式的数据定义语言是:外模式DDL。
-
内部模式:也称为存储模式,是对数据物理结构和存储模式的描述,是数据库中数据的表达,定义所有内部记录类型、索引和文件的组织方法,以及数据控制的细节。描述内部模式的数据定义语言为:内部模式DDL。
在一个数据库系统中,可以有多种外部模式,只有一种模式和内部模式!
外模式-模式-内模式 对应:视图-基本表-文件
1.2、两级映像
首先,数据的独立性是由DBMS保证了两级图像功能。
-
模式/:它存在于概念级和内部级之间,实现了模式和内部模式之间的相互转换。确保数据。
-
模式/:它存在于外部级和概念级之间,实现了外部模式和模式之间的相互转换。确保数据。(如果创建视图不改变数据表的原始情况)
二、数据库设计过程
三、ER模型
在E-R在模型中,每个实体必须转换为一种关系模式,而联系分为(1:1,1:1:1:n,m:n)前两种可以转也可以不转,第三种必须转。所以上面的例子,A、B、C这三个实体是多对多联系,所以它们必须被转换为四种关系模式。具体的转换规则如下表所示
四、关系代数
五、规范理论
5.1、函数依赖
假设:学号→姓名意味着学号只能确定学生的姓名,即姓名完全依赖学号。
假设(学号、课程号)→系名,根据常识,显然根据学生的学号,可以确认学生的系,根本不需要课程号的属性,所以这是函数依赖的一部分。
假设:学号→系名,系名→这里我们可以直接得主任的姓名:学号→系主任的名字,所以这是传递函数依赖。
5.2.价值与用途
5.3、键
-
超键:学号或身份证号都可以定位学生,所以(学号 身份证号 班级号)也可以定位学生,加起来叫超键。
-
候选键:从超键中删除多余的属性,如班级号,剩余的学号和身份证号可以单独定位学生,这两个集合称为候选键
-
主键:从候选键中选择任何一个作为主键
-
外键:如果关系模式R中的属性或属性组不是关系的代码,而是其他关系模式的代码,那么关系模式R中的属性或属性组就是外码。
5.4、求候选键
根据上述方法找出候选关键词
5.5、范式
5.5.1、第一范式
去掉非原子值:高级职称人数
5.5.2、第二范式
非主属性必须完全依赖于主属性(主要发生在联合主键的情况下,非主键列不仅要依赖于主键的一部分,最好是单个主键)
GRADE依赖于SNO和CNO,符合 CREDIT仅依赖于CNO,不符合第二范式
修改为如下
SNO | CNO | GRADE |
---|---|---|
SO1 | CO1 | 75 |
CNO | CREDEIT |
---|---|
CO1 | 4 |
5.5.3、第三范式
非主属性不能与非主属性有依赖非主属性必须直接依赖于主属性,不能间接依赖于主属性
DNAME、LOCATION依赖于DNO,DNO依赖于SNO,传递依赖不符合第三范式
SNO | SNAME | DNO |
---|---|---|
S01 | 张三 | D01 |
DNO | DNAME | LOCATION |
---|---|---|
D01 | 计算机系 | 1号楼 |
5.5.4、BC范式
5.6、例题
第一空:部门表只有一个主键且没有产生部分依赖,但电话传递依赖于负责人,所以未消除传递依赖,选C 第二空:多个员工对应一个部门,只能在多的表添加部门属性,选D 第三空:销售关系无需部门号和职工号一起,因为在2选项已经建立好关系,商品名称可以通过商品号查询,所以选A
5.7、模式分解
假设一个关系模式R(A,B,C),函数依赖集F={A→B,B→C},我们将关系模式R分解为R1(A,B),R2(B,C)。那么在R1中,我们能够找出A→B;在R2中,我们能够找出B→C,这与原函数依赖集完全对应,所以就称这样的模式分解保持函数依赖。(换句话说,对于一个总关系模式分解成了若干个子关系模式,如果根据这些子关系模式中的属性能够推出与原函数依赖集相同的内容,则称保持函数依赖)
对于模式分解,如果分解的子关系模式数量大于2,则需使用表格法进行还原(表格法在这里就不再详细讲解了);如果分解的子关系模式只有两个:R1和R2,那么只需要求一下 R1∩R2(交集)、R1-R2(差运算)、R2-R1(差运算),如果此时 R1∩R2 能够推出 R1-R2或R2-R1 其中之一,则称模式分解是无损的。
例题1
例题2
例题3
六、并发控制
6.1、并发控制产生的问题
6.2、封锁协议
-
排它锁:也称X锁或写锁。若事务T对数据对象A加上X锁,则只允许T读取和修改A,其他事务都不能再对A加任何类型的锁,直到T释放A上的锁。
-
共享锁:也称S锁或读锁。若事务T对数据对象A加上S锁,则只允许T读取A,但不能修改A,其他事务只能再对A加S锁,直到T释放A上的S锁。这就保证了其他事务可以读取A,但在T释放A上的S锁之前不能对A进行任何修改。
七、完整性约束
-
实体完整性:若属性(或属性组)A是基本关系R的主属性,则A不能取空值。(换句话说,就是主键不能为空)
-
参照完整性:若属性(或属性组)F是基本关系R的外键,它与基本关系S的主码Ks相对应,则对于R中的每个元组在F上的值必须:等于S中某个元组的主码值,或者取空值。(换句话说,就是外键要么为空,要么等于另一个关系的主键)
八、数据库安全
九、数据库备份
九、数据仓库与数据挖掘
9.1、数据仓库
9.2、数据挖掘方法
十、反规范化
十一、大数据基本概念