1. 第一章
-
数据库管理系统(DBMS):由一个互相关联的数据的集合和一组用以访问这些数据的程序组成。
数据库:数据的集合。
DBMS的主要目标:要提供一种可以方便、高效地存取数据库信息的途径。
数据库系统的应用
代表性的应用:
企业信息
银行和金融
大学
航空业
电信业 -
数据库系统的目标
文件处理系统中存储组织的主要弊端:
数据的冗余和不一致。
数据访问困难。
数据孤立。
完整性问题。
原子性问题。
并发访问困难。
安全性问题。 -
数据视图
-
数据抽象
物理层:最低层次的抽象。描述数据实际是怎样存储的。
逻辑层:描述数据库中存储什么数据以及这些数据间存在什么关系。(物理数据独立性:逻辑层不用知道复杂的物理层结构。)管理员必须确定数据库中应该保存哪些信息。
视图层:最高层次的抽象。只描述整个数据库的某个部分。 -
实例和模式
实例:特定时刻存储在数据库中的信息的集合。
模式:数据库的总体设计。
物理模式:在物理层描述数据库的设计。
逻辑模式:在逻辑层描述数据库的设计。
视图层的几种模式有时称为子模式,描述了数据库的不同视图。
物理数据独立性:应用程序不依赖于物理模式。该情况下即使物理模式改变了也无需重写。 -
数据模型
数据模型是数据库结构的基础,数据模型是一个描述数据、数据联系、数据语义以及一致性约束的概念工具的集合。数据库模型提供了一种描述物理层、逻辑层以及视图层数据库设计的方式。 -
关系模型
用表的集合来表示数据和数据间的联系。每个表有多个列,每个列有唯一的列名。关系模型是基于记录的一种模型。每个表包含某种特定类型的记录。每个记录类型定义了固定数目固定数目的字段(或属性)。表的列对应于记录类型的属性。(使用最广泛) -
实体-联系模型
(E-R)模型基于对现实世界的这样一种认识:现实世界由一组称作实体的基本对象以及这些对象间的联系构成,实体是现实世界中可区别于其他对象的一件“事情”或一个“物体”。实体-联系模型被广泛用于数据库设计。 -
基于对象的数据模型
面向对象的数据模型可以看成是E-R模型增加了封装、方法(函数)和对象标识等概念后的扩展。对象-关系数据模型结合了面向对象的数据模型和关系数据模型的特征。 -
半结构化数据模型
半结构化数据模型允许那些相同类型的数据项含有不同的属性集的数据定义。
可扩展标记语言(XML)被广泛用来表示半结构化数据, -
数据库语言
-
数据操纵语言(DML)
用户可以访问或操纵那些按照某种适当的数据模型组织起来的数据有以下访问类型:
对存储在数据库中的信息进行检索。
向数据库中插入新的信息。
从数据库中删除信息。
修改数据库中存储的信息。
过程化DML:要求用户指定需要什么数据以及如何获得这些数据。
声明式DML:只要求用户制定需要什么数据,而不指明如何获得这些数据。
查询:要求对信息进行检索的语句。
- 数据定义语言(DDL)
数据存储和定义语言:数据库系统所使用的存储结构和访问方式是通过一系列特殊的DDL语句来说明的,这些DDL语句称作数据存储和定义语言。
存储在数据库中的数据值必须满足某些一致性约束。
域约束:每个属性都必须对应一个所有可能的取值构成的域。域约束是完整性约束的最基本形式。
参照完整性:一个关系中给定属性集上的取值也在另一关系的某一属性的取值中出现。
断言:一个断言就是数据库需要时刻满足的某一条件。域约束和参照完整性约束是断言的特殊形式。
授权:对用户加以区别,对于不同用户在数据库中的不同数据值上允许不同的访问类型。最常见的:
读权限:允许读取数据,但不能修改数据。
插入权限:允许插入新数据,但不允许修改已有数据。
更新权限:允许修改,但不能删除数据。
删除权限:允许删除数据。
DDL以一些指令语句作为输入,生成一些输出,这些输出放在数据字典中,数据字典包含了元数据,,元数据是关于数据的数据。可把数据字典看做一种特殊的表,这种表只能由数据库系统本身(不是常规用户)来访问和修改的。在读取和修改实际的数据前,数据库系统先要参考数据字典。
- 关系数据库
- 表
- 数据操纵语言
- 数据定义语言
- 来自应用程序的数据库访问