数据库系统组成
- 数据库
- 数据库管理系统(及其开发工具)
- 应用系统
- 数据库管理员
- 硬件平台及数据库
- 软件
- 人员
数据库系统概述
基本概念
-
数据库系统(DBS)是由数据库、数据库管理系统(及其应用开发工具)、应用程序和数据库管理员(DBA)组成的存储、管理、处理和维护数据的系统
-
数据库管理系统(DBMS):核心软件
- 功能:数据定义;数据组织、存储和管理;数据操纵;数据库的事务管理和运行管理;数据库的建立和维护;其他
-
数据库(DataBase):DB
- 是长期储存在计算机内、有组织的、可共享的大量数据的集合
-
数据库用户
- 第一类用户:最终用户(End User)
- 第二类用户:应用程序员(Application Programmer)
- 第三类用户:数据库管理员(DataBase Administrator):DBA
发展过程
系统特点
- 数据库系统特点:
- 数据结构化:数据模型 最小存取单位:数据项
- 数据共享性高
- 数据独立性高:物理 逻辑 数据
- 数据由DBMS统一管理和控制
- 数据的安全性保护
- 数据的完整性检查
- 并发控制
- 数据库恢复
数据模型
基本概念
-
在数据库中用数据模型这个工具来抽象、表示和处理现实世界中的数据和信息
-
分类:概念模型:用于DBMS实现 网状模型、层次模型、关系模型、面向对象模型、对象关系模型
逻辑模型和物理模型:对数据最底层的抽象,描述数据在系统内部的表示和存取
-
组成要素:数据结构;数据操作;完整性约束条件;
概念模型
-
基本概念:实体;属性;码;域;实体型;实体集;联系
- 码:唯一标识实体的属性集
- 域:属性的取值范围
- 实体型:用实体名及其属性名集合来抽象和刻画同类实体
- 实体集:同一类型实体的集合称为实体集
这都啥玩意
-
两个实体型之间的联系
-
两个以上实体型之间联系
-
单个实体型内的联系
某一职工(干部)“领导”若干名职工,一个职工仅被另外一个职工直接领导
实体-联系方法(E-R方法)
- 实体型:矩形,矩形框内写实体名
- 属性:椭圆形,用无向边连接
- 联系:菱形,框内写明联系名,用无向边连接,并标上联系类型(1:1、1:n或m:n)
层次模型
- 出现最早 树形结构 只能一对多或将多对多分解为一对多
-
完整性约束条件:
- 无相应的双亲结点值就不能插入子女结点值
- 如果删除双亲结点值,则相应的子女结点值也被同时删除
- 更新操作时,应更新所有相应记录,以保证数据的一致性
-
存储结构
-
邻接法:按照层次树前序遍历的顺序把所有记录值依次邻接存
-
链接法
-
子女-兄弟链接法:每个记录设两类指针,分别指向最左边的子女和最近的兄弟
-
层次序列链接法:按树的前序穿越顺序链接各记录值
-
-
-
优点:数据结构简单清晰;查询效率高,性能优于关系模型,不低于网状模型;提供了良好的完整性支持;
-
缺点:多对多联系不自然;对插入和删除限制多,应用程序编写复杂;查询子女节点必须通过双亲结点;结构严密使层次命令趋于程序化;
网状模型
-
允许多个结点无双亲;一个结点可以有多个双亲;
-
层次模型实际上是网状模型的一个特例
-
完整性约束
- 码:唯一标识记录的数据项的集合;
- 一个联系中双亲记录与子女记录之间是一对多联系;
- 支持双亲记录和子女记录之间某些约束条件
-
要为每个联系命名,并指出与该联系有关的双亲记录和子女记录
-
优点:更直接地描述现实世界;具有良好的性能,存取效率较高;
-
缺点:结构比较复杂,且随着应用环境的扩大,数据库结构越来越复杂,不利于最终用户掌握;DDL、DML语言复杂,用户不容易使用;
关系模型
-
用户观点下,关系模型中数据的逻辑结构是一张由行和列组成的二维表,存取路径对用户透明
-
实体及实体间的联系都用表来表示,表以文件形式存储
-
关系:一张表;元组:一行;属性:一列;
主码:某个属性组,可以唯一确定一个元组;
域:属性的取值范围;
分量:元组中的一个属性值;
关系模式:一对一,一对多,多对多;
-
关系不允许表中还有表
(禁止套娃) -
完整性约束条件:实体完整性;参照完整性;用户定义的完整性;
-
优点:建立在严格的数学概念基础上;概念单一;关系模型的存取路径对用户透明;
-
缺点:查询效率不如非关系数据模型;DBMS开发难度增加;
数据库系统结构
基本概念
-
型:对某类数据的结构和属性说明;
值:是型的一个具体赋值;
-
模式:管理数据的,是型的描述
实例:数据
-
从数据库管理系统看:三级模式结构
-
从数据库最终用户看:单用户结构;主从式结构;分布式结构;客户/服务器;浏览器/应用服务器/数据库服务器多层结构等
三级模式结构
-
一个数据库只有一个内模式和一个模式,可以有多个外模式
-
模式(逻辑模式):数据库中全体数据的逻辑结构和特征的描述;数据库系统模式结构的中间层;
-
外模式(子模式或用户模式):保证数据库安全性的一个有力措施;每个用户只能看见和访问所对应的外模式中的数据;
-
内模式(存储模式):数据物理结构和存储方式的描述;数据在数据库内部的表示方式;
二级映像功能与数据独立性
-
二级映象在DBMS内部实现三级模式的联系和转换
-
外模式/模式映像:保证数据的逻辑独立性
- 每一个外模都有一个外模式/模式映象,定义外模式与模式之间的对应关系
- 映象定义通常包含在各自外模式的描述中
-
模式/内模式映像:保证数据的物理独立性
- 定义了数据全局逻辑结构与存储结构之间的对应关系
- 该映象定义通常包含在模式描述中