吉林大学-数据库系统概念-期末复习-第一部分-引言
吉林大学 数据库系统概念 期末复习 第一部分 引言
文章目录
数据库系统概念 第一章 引言
1.1数据库系统的目标
为何要引入数据库,数据库与文件处理系统的好处是什么,即数据库解决了那些文件处理系统的弊端?
· 数据的冗余和不一致: 相同的信息可能在多个文件中存储,即导致存储和访问开销增大,又可能导致数据不一致。
· 数据访问困难: 对于不同的需求需要不同的程序来满足
· 数据孤立: 数据分散在不同文件,不同文件有不同的格式。
· 完整性约束: 当新的约束加入时,文件很难通过修改程序体现新的约束。
· 原子性约束 如果一个操作是原子的,那么它要么全部发生要么根本不发生。文件很难保持原子性。
· 并发访问异常: 由于并发性导致数据不一致,文件很难避免不一致性
1.2 数据视图
1.2.1 数据抽象
·物理层: 数据实际上如何存储的。物理层详细描述复杂的底层数据结构
- ·逻辑层
- 描述数据库存储什么数据以及这些数据见存在什么关系。逻辑层的简单结构的实现可能涉及复杂的物理层结构,但逻辑层用户不必知道,这称为物理数据独立性。
- ·视图层
- 只描述数据库的某个部分。
1.2.2 实例和模式
特定时刻存储在数据库中的信息集合称作数据库的一个 实例 。数据库的总体设计称作数据库 模式 。
物理模式,逻辑模式,子模式 分别描述物理层,逻辑层,视图层的模式。
1.2.3 数据模型
数据库的结构的基础是数据模型,数据模型可被分为四类: 关系模型 , 实体-联系模型 , 基于对象的数据模型 , 半结构化数据模型 。
1.3 数据库语言
1.3.1 数据操纵语言(DML)
数据操纵语言(DML)的访问类型:即增删改查。
通常有两种基本的数据操纵语言
·过程化DML :要求用户指定需要什么数据以及如何获得数据。
·声明式DML :只需要用户指定什么数据。
1.3.2数据定义语言(DDL)
数据模式是通过一系列定义说明的,这些定义叫做 数据定义语言 ,同时DDL也可以定义数据的其他特征。
存储在数据库中的数据值必须满足某些一致性约束。DDL提供了指定这种约束的工具,每当数据库更新时,数据库系统会检查这些约束。
·域约束 :域可以看作取值范围,声明一种属性属于某种具体的域就相当于它可以取的值。
·参照完整性 :一个关系中的给定属性集的取值也在另一关系中某一个属性集的取值范围。
·断言 :一个断言就是数据库时刻满足的条件
·授权 : 对于不同的用户有着不同的权限。 读权限 , 插入权限 , 更新权限 , 删除权限 。
1.4 关系数据库
1.4.1 表
关系模型是基于记录的模型的一个实例。基于记录的模型,之所以有这个称谓,是因为数据库的结构是几种固定的记录。每个表包含一种特定类型的记录。每种记录类型定义固定数目的字段或属性。表的列对应记录类型的属性。
1.4.2 数据操纵语言(sql)
select instructor,name
from instructor
where deptname = 'History'
1.4.3 数据定义语言(sql)
create table department
(deptname char(20),
building char(15),
budget numeric(12,2));
1.4.4 来自应用程序的数据库访问
·提供应用程序接口如(ODBC,JDBC)
·再宿主语言中嵌入DML调用
1.5 数据库设计
1.5.1 实体-联系模型
实体通过属性集合来描述,联系是几个实体的关联。同一类型下的所有实体的集合称作实体集,同一类型下的联系的集合称为联系集。
1.5.2 规范化
规范化的目标是生成一个关系模式集合,使我们存储信息时没有不必要的冗余,同时又能轻易的检索数据。最常用的使用函数依赖。
1.6 存储管理器
1.6.1存储管理器
- 权限及完整性管理器: 它检测是否满足完整性约束,并检查试图访问数据的用户权限
- 事务管理器: 它保证即时发生故障,数据库也能保持一致
- 文件管理器: 管理磁盘存储的分配
- 缓冲区管理器: 它负责将数据从磁盘上取到内存中
- 数据文件: 存储数据库自身
- 数据字典: 存储关于数据库结构的元数据
- 索引: 提供对数据项的快速访问。数据库索引提供了指向包含特定值的指针。
1.6.2 查询处理器
DDL解释器,DML编译器,查询执行引擎 。
1.7 事务管理
原子性 :操作要么都发生,要么都不发生。
一致性 :数据库的一致性。
持久性 :在一个事务提交之后,事务的状态就会被持久化到数据库中,对数据的更新、新增等操作将会持久化到数据库中。
恢复管理器: 原子性,持久性。
事务管理器:一致性