数据库系统概述
1. 地位:信息系统的核心和基础
2. 作用:存储和处理信息资源
3. 四个基本概念:
概念 | 特点 | 注意 |
---|---|---|
数据 | 数据库存储的基本单位;即描述事物的符号记录 | 数据离不开数据的解释,即数据的语义 |
数据库(DB) | 本质:“大量”数据的集合(这些数据的有三大特点:1.长期存储在计算机上;2.有组织的;3.可共享的) | 数据库的数据因为有一定组织性,故冗余度小,数据独立性高,易扩展,可共享 |
数据库管理系统(DBMS) | 本质:计算机的基础但很复杂软件;位于用户和操作系统之间的数据库管理软件 | 功能概述:科学组织和存储数据,高效获取和维护数据 |
数据库系统 (DBS) | 本质:由数据库·数据库管理系统·应用程序·数据库管理员组成的系统 | 功能概述:存储、管理、处理和维护数据 |
扩充:数据库的六大主要功能:
功能 | 解释 |
---|---|
数据定义功能 | 百度上解释说:用于定义数据库的所有特性和属性,尤其是行布局,列定义,键列,文件位置和存储策略 |
数据组织、存储和管理 | |
数据操作功能 | 增删查改 |
数据库的事务管理和运行功能 | |
数据库建立和维护功能 | |
其他功能 | 如数据库管理系统和其他软件系统的通信功能,两个DBMS的数据转换功能、异构数据库间访问和互操作 |
扩充:数据库系统的组成(图片)
4. 数据管理技术的产生和发展
人工管理阶段 |
---|
文件系统阶段 |
数据库系统阶段 |
对比:[结果依次是人工;文件;数据库]
- 数据是否长期保存【否;是;是】
- 数据管理者是谁【程序员;文件系统;数据库管理系统】
- 数据是否共享【无;较少;很高】
- 数据是否具有独立性【无;较少;很高】
- 数据的结构化如何【无;局部有整体无;整体结构化】
- 数据控制能力如何【应用程序自身控制;应用程序自身控制;数据库管理系统统一管理和控制】
扩充:
何为数据独立性?
独立性分为物理独立性和逻辑独立性
简单地说:当数据库的数据物理结构或者逻辑结构发生改变时,应用程序无需改变,数据库之所以数据独立性高是因为数据库管理系统提供的二级映像功能保证[二级映像见下文]。
何为数据共享?
当数据不再只面向某个应用而是面向整个系统时,共享性就会很高
数据若是共享性很低则会导致即使不同的应用程序需要用到相同的数据时,也必须建立各自文件,不能共享相同数据
共享性低就会导致冗余度大,浪费存储空间
而共享性高还可以避免数据间不相容性与不一致性
数据库管理系统统一管理和控制什么?
原因:数据库的并发共享若不加以控制必然会导致一些安全隐患以及数据的正确也会受到一定的影响
1.数据的安全性保护:保护数据以防止不合法使用造成的数据泄密和破坏
2.数据的完整性检查:通俗地说就是将数据控制在有效范围内,并保证数据之间满足一定的关系
3.并发控制
4.数据库的恢复
数据模型
- 概念:是对现实世界数据特征的抽象,是数据库系统的核心和基础
- 分类:
第一类 | 概念模型 (信息模型) | 按照用户的观点来对数据和信息建模, 用于数据库设计 |
---|---|---|
第二类 | 逻辑模型 | 按计算机系统的观点对数据建模,主要用于数据库管理系统的实现 |
物理模型 | 对数据最底层的抽象,描述数据在计算机系统内部或磁盘磁带上存储方式和存取方法,面向计算机系统 |
3.现实世界中客观对象抽象过程(逻辑模型的由来):
现实世界 | 概念模型 | 数据库管理系统支持的数据模型 |
---|---|---|
(信息世界) | (机器世界) |
4.概念模型(待补充)
5.数据模型
数据模型三要素 | ||
---|---|---|
数据结构 | 数据库的组成对象及其之间的联系 | |
数据操作 | 对数据库中数据允许执行的操作的集合,包括操作及有关的操作规则 | |
数据的完整性约束条件 | 给定的数据模型中数据及其联系所具有的制约和依存规则,用以限定数据库的状态以及状态的变化,确保数据的正确,有效,相容 | |
常见的数据模型 | ||
层次模型 | 即树状结构,它的联系只有一对多 | |
网状模型 | 有多对多的关系 | |
关系模型 | 关系模型的数据操作必须满足完整性约束条件[^1] |
层次结构如何转换多对多联系?
需要将多对多联系分解为一对多,实现方法有冗余节点法和虚拟节点法
网状模型与层次模型异同点
层次(网状)模型允许有一个(一个以上)节点无双亲
层次(网状)模型中一个节点有一个(一个以上)的双亲,这也就意味着层次(网状)模型与双亲节点的联系唯一(不唯一),故网状模型要为每个联系进行命名,并指出与给联系有关的双亲记录和子女记录
层次模型是网状模型的特例
关系模型的相关术语
术语 | 含义 |
---|---|
关系 | 对应一张表 |
元组 | 表中一行即一个元组 |
属性 | 表中一列代表一个属性 |
码(码键) | 可以唯一确定一个元组的属性值,即本关系的码 |
域 | 属性的取值范围 |
分量 | 元组中的一个属性值 |
关系模型 | 对关系的描述,表示为关系名(属性1,属性2,···,属性n) |
关系模型和格式化模型异同
层次模型与网状模型均属于格式化模型
格式化模型可以描述复杂的数据结构,用存取路径实现数据间的联系。
关系模型为非格式化的结构,用单一的二维表的结构表示实体及实体之间的联系。
格式化模型的查询效率往往高于非格式化模型
数据库系统的结构
何为二级映像?
存储结构(即内模式)改变时,通过对模式/内模式映像作出相应的变化,从而使得模式保持不变,模式不变,根据外模式/模式的二级映像,外模式自然也不会改变,从而使得应用程序保持不变。