临近期末,需要对数据库系统有一个全面深刻的认识(为了得高分啊XD),深知数据库系统的重要性,故开坑笔记重温。
第一章 绪论
数据库是数据管理的一门技术,是计算机科学的重要分支。越来越多新的应用领域采用数据库技术来存储和处理信息资源。数据库的规模、信息量的大小和使用频度已经成为衡量一个国家信息化程度的重要标志。
一、数据
数据是数据库中存储的基本对象。对数据的定义:描述事物的符号记录。具体数据不能表达其真实含义,对于某一具体数据需要经过解释才能获取原意,因此数据和关于数据的解释是不可分的。将描述同一对象的多个数据捆绑组织在一起,组成一个记录。记录是数据的一种,这样的数据是有结构的。
数据是现实世界具体对象的一种抽象,是描述具体对象的一种符号。
二、数据库
顾名思义,数据库就是用来存放数据的一个仓库。人们把收集起来的数据保存起来,以提供进一步的加工、分析。如何去有组织的存放,有效的利用存储空间,提供更快的查询,保证数据独立性、扩展性,能够为多用户共享是我们将要讨论的问题。
数据库是长期存储在计算机内,有组织的、可共享的大量数据的集合。
数据库需要解决的问题是这几个方面:
1)如何有效组织、存放、描述数据
2)如何保证数据的完整性、安全性
3)如何保证数据是易于扩展的
4)如何共享数据
三、数据库管理系统(DBMS,Database Management System)
数据库管理系统是介于用户与操作系统之间的一层数据管理软件,它包括以下几个方面:
1、数据定义功能
DBMS提供数据定义语言DDL(Data Definition Language)。用户通过它对数据库中的数据对象进行定义。
2、数据组织、存储和管理
确定以何种文件结构和存取方式在存储级上组织数据,如何实现数据之间的联系。数据组织和存储的基本目标是提高存储空间利用率和方便存取。
3、数据操纵功能
DBMS提供数据操纵语言DML(Data Manipulation Language)。用户通过它操纵数据库中的数据,实现对数据的基本操作,如查询、插入、删除和更新。
4、数据库的事物管理和运行管理
数据库的建立、运用和维护都是有数据库管理系统统一管理控制,以保证数据的安全性、完整性、并发处理和发生故障后的系统恢复。
5、数据库的建立和维护功能
初始数据的输入、转换功能,数据库的转储、恢复功能,数据库的重组织和性能监视、分析功能。
6、其他功能
通信功能、数据转换功能、异构数据库互访问、互操作等。
四、数据库系统(DBS,Database System)
数据库系统是指在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员(DBA,Database Administrator)构成。
数据管理技术的产生和发展
数据管理是指数据进行分类、组织、编码、存储、检索和维护,它是数据处理的中心问题。数据处理是指对各种数据进行收集、存储、加工和传播的一系列活动的总和。
人工管理阶段(20世纪50年代中期以前)
硬件状况:外存只有纸带、卡片、磁带。(无直接存储设备)
软件状况:没有操作系统、没有管理数据的专门软件
数据处理方式:批处理
特点:
1)数据不保存
2)应用程序管理数据
3)数据不共享
4)数据不具有独立性
文件系统阶段(20世纪50年代后期到60年代中期)
硬件状况:有磁盘、磁鼓。(有直接存储设备)
软件状况:操作系统中有专门的数据管理软件(文件系统)
数据处理方式:批处理、联机实时处理
特点:
1)数据长期保存
2)由文件系统管理数据
数据库系统阶段(20世纪60年代后期至今,数据量急剧增长,需求迫切)
硬件状况:大容量磁盘,硬件价格下降
软件状况:编制、维护应用程序成本增加
数据处理方式:联机实时处理方式要求增多,提出和考虑分布处理
特点:
1)数据结构化
数据库的主要特征之一,也是数据库系统与文件系统的本质区别。数据库中的数据是面向全组织;数据之间具有联系。
2)数据的共享性高,冗余度低,易于扩充
3)数据独立性高
物理独立性、逻辑独立性。
4)数据由DBMS统一管理和控制
数据模型
模型是对现实中某个对象特征的模拟和抽象。数据模型(Data Model)也是一种模型,它是对现实世界数据特征的抽象。数据模型是用来描述数据、组织数据和对数据进行操作的。
数据模型就是对现实世界的模拟。
两类数据模型
数据模型应满足三方面要求:1)真实模拟现实世界;2)容易为人所理解;3)便于在计算机上实现。
第一类是概念模型(Conceptual Model),也称为信息模型,它是按用户的观点来对数据和信息建模,主要用于数据库设计。
第二类是逻辑模型和物理模型,逻辑模型主要包括层次模型(Hierarchical Model)、网状模型(Network Model)、关系模型(Relational Model)、面向对象模型(Object Oriented Model)和对象关系模型(Object Relational Model)等。它是按计算机系统的观点对数据建模,主要用于DBMS实现。物理模型是对数据最底层的抽象,它描述数据在系统内部的表示方式和存取方法,是面向计算机系统的。
数据模型的组成要素
数据结构、数据操作、完整性约束
这三个方面主要描述了数据的静态特性(数据结构),动态特性(数据操作),数据正确、有效、相容保证约束(完整性约束)
数据结构
1)对象类型、内容、性质的描述
2)数据之间联系的描述
数据操作
各种对象的实例允许执行的操作的集合。
完整性约束条件
给定数据及其联系所具有的制约和依存规则,保证数据的正确、有效、相容。
概念模型
是现实世界与机器世界的一个中间层,是数据库设计人员和用户之间进行交流的语言。要求有较强的语义表达能力,应该简单、清晰、易于用户理解。
信息世界中的基本概念
1)实体(Entity)
客观存在并可相互区别的事物。
2)属性(Attribute)
实体所具有的某一特性。
3)码(Key)
唯一标识实体的属性集。
4)域(Domain)
一组具有相同数据类型的值的集合。
5)实体型(Entity Type)
实体名及其属性名集合来抽象和刻画同类实体。
6)实体集(Entity Set)
同一类型实体的集合。
7)联系(Relationship)
实体(型)内部联系和实体(型)之间的联系。
两个实体型之间的联系
1)一对一联系(1:1)
2)一对多联系(1;n)
3)多对多联系(n:m)
数据库系统结构
模式(Schema)是数据库中全体数据的逻辑结构和特征的描述,它仅仅涉及型的描述,不涉及具体的值。模式的一个具体值成为模式的一个实例(Instance)。因此模式是相对稳定的,而实例是相对变动的。
数据库系统的三级模式结构
数据库系统是由外模式、模式、内模式三级构成。
模式(Schema)
也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。一个数据库只有一个模式。
一个数据库描述的是一个系统内的所有关系联系。模式描述整个系统的数据逻辑。
外模式(External Schema)
也称子模式或用户模式,是数据库用户能够看见和使用的局部逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。一个数据库可以有多个外模式。
内模式(Internal Schema)
也称存储模式,是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。一个数据库只有一个内模式。
数据库的二级映像功能与数据独立性
数据库管理系统在三级模式之间提供了两层映像:
1)外模式/模式映像(多个)
2)模式/内模式映像(唯一)
两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。