本章主要讨论数据库系统的基本概念,基本原理,基本方法以及有关的应用。内容包括:数据库系统的组成、关系数据库、数据库设计以及数据库相关技术。要求学生通过本课程的学习了数据库系统的基本概念,掌握相关的知识,初步掌握数据库设计方法,并能用数据库系统建立数据库及简单的应用。
1.数据库系统(DBS)是一个复杂的系统,它是采用了数据库技术的计算机系统。DBS不仅仅是一组对数据库进行管理的软件(即DBMS),也不仅仅是一个数据库(DB)。DBS是一个实际可运行的,按照数据库方法存储、维护和向应用系统提供数据支持的系统,它是存储介质、处理对象和管理系统的集合体,由数据库、硬件、软件和数据库管理员四部分组成。 数据库是依照某种数据模型组织起来并存放二级存储器中的数据集合。这些数据为多个应用服务,独立于具体的应用程序。数据库由数据库管理系统统一管理,数据的插入、修改和检索均要通过数据库管理系统进行。 数据库管理系统是一种操纵和管理数据库的大型软件,是用于建立、使用和维护数据库,对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。用户通过dbms访问数据库中的数据,数据库管理员也通过dbms进行数据库的维护工作。它提供多种功能,可使多个应用程序和用户用不同的方法在同时或不同时刻去建立,修改和询问数据库。它使用户能方便地定义和操纵数据,维护数据的安全性和完整性,以及进行多用户下的并发控制和恢复数据库。按功能划分,数据库管理系统大致可分为6个部分:应用程序和数据存储彼此分开
物理存储改变不影响应用程序
逻辑独立性
应用程序逻辑和数据存储逻辑彼此分开
存储逻辑改变,不影响应用
DBMS统一的管理和控制:
数据安全性(security)-防止数据的非法使用
数据完整性(integrity)-数据的正确,有效和相容
并发控制(concurrency)-多用户并发访问的控制和协调
数据库恢复(recovery)-由于意外故障的数据恢复。保证数据库的正确状态
4.
数据模型
t模型
t数据模型(data model)是现实世界数据特征的抽象
t数据模型不仅要反应数据本身,还要反应出数据之间的关系
t数据模型的要求
t真实
t易于理解
t易于通过计算机实现
数据模型的两种类型
t根据模型的不同应用目的
t概念模型(信息模型)
t用户角度,用于数据库设计
t数据模型
t计算机系统的角度,用于DBMS实现
t网状模型
t层次模型
t关系模型
数据模型的组成要素
t数据结构
t数据操作
t完整性约束
数据结构
t是所研究对象类型的集合
t数据内容
t数据和数据之间的联系
t是数据库的静态描述
数据操作
t是对数据库中各个对象允许执行操作的集合以及相关操作的规则
t插入,删除,修改
数据的约束条件
t约束条件是是一组完整性规则的集合
t给定数据模型中数据及其联系具有的制约和依存规则
5概念模型
t是现实世界到信息世界的第一层抽象
t数据库设计人员进行数据库设计的工具
一些基本概念
t实体(Entity)-可以相互区别的事物
t属性(attribute)实体的某一方面特性
t码(key)唯一标识实体的属性集
t域(domain)属性的取值范围
t实体型(entity type)用实体名和属性名集合来描述同类实体,称为实体型
t实体集(entity set)同型实体的集合
t关系(relationship)实体内部或者实体之间的关系
联系
t1:1(一对一)
t实体集A中每一个实体在实体集B中至多有1个实体与之联系,反之亦然
t1:n(一对多)
t实体集A中每一个实体在实体集B中至有n个实体与之联系,反之是1:1关系
tM:n(多对多)
t实体集A中每一个实体在实体集B中至有n个实体与之联系,反之亦然
5.概念模型
t是现实世界到信息世界的第一层抽象
t数据库设计人员进行数据库设计的工具
一些基本概念
t实体(Entity)-可以相互区别的事物
t属性(attribute)实体的某一方面特性
t码(key)唯一标识实体的属性集
t域(domain)属性的取值范围
t实体型(entity type)用实体名和属性名集合来描述同类实体,称为实体型
t实体集(entity set)同型实体的集合
t关系(relationship)实体内部或者实体之间的关系
联系
t1:1(一对一)
t实体集A中每一个实体在实体集B中至多有1个实体与之联系,反之亦然
t1:n(一对多)
t实体集A中每一个实体在实体集B中至有n个实体与之联系,反之是1:1关系
tM:n(多对多)
t实体集A中每一个实体在实体集B中至有n个实体与之联系,反之亦然
P.P.S.chen 1976年提出的实体-联系方法
E-R模型 反应实体型 属性和联系
实体型 矩形 内部写实体名
属性 椭圆 用无向边和对应的实体联系起来
联系 菱形 内写联系名 无向边标识联系类型
6.关系模型
t目前最重要的数据库数据模型,关系型数据库采用关系模型做为数据的组织形式
t1970年由E.F.Codd首次提出,因此获得1981年图灵奖
t本课程重点也是关系型数据库
关系数据库的基本概念
t关系(relation) 对应一张二维表
t元组(tuple)表中的一行称为一个元组
t属性(attribute)表中的一列称为一个属性,属性的名称叫属性名
t主码(key)某个属性组,可以唯一的确定一个元组
t域(domain)属性的取值范围
t分量:元组的一个属性值
t关系模式:对关系的描述 关系名(属性1,属性2,属性3)
t关系模型中数据操纵包括:查询,插入,删除,和修改,所有的操纵是真对关系表进行
t关系的完整性主要包含以下三个方面
t实体完整性
t参照完整性
t用户定义完整性
关系模型的存储结构
t在物理存储中,数据以表格的形式存在
t实体
t实体和实体之间的联系
关系型数据库的优缺点
t优点
t理论基础完善
t模型单一,无论实体和实体关系统一用表的形式表示
t存取方式对用户透明,具有更好的数据独立性
t缺点
t查询效率较低
t需要用户对查询进行优化
7.数据库系统结构
t数据库管理的角度(内部结构)
t采用三级模式结构
t数据库用户的角度(外部结构)
t集中式结构
t分布式结构
t客户/服务器结构
t并行结构
数据库系统模式的概念
t型(type):一类数据结构和属性的说明
t值(value):是型的一个具体赋值
t模式(schema)数据库中全部数据的逻辑结构和特征描述
t实例(instance)模式的一个具体取值
t数据库一般采用三级模式结构
三级模式结构
t外模式
t模式
t内模式
t全部数据逻辑结构和特征的描述
t所有用户的公共视图
t处于中间层:不涉及物理存储,也不涉及最终用户的设计和使用
t一个数据库只有一个模式
tDDL 用来定义数据库的模式
外模式
t也称为子模式(subschema)是对数据库用户局部逻辑结构和特征的描述
t是模式的子集,一个数据库可以有多个外模式
t是数据库安全性的有力措施
t外模式通过DDL来定义
内模式
t也称为存储模式(storage schema)
t描述数据的物理结构和存储方式
t一个数据库只有一个内模式
t通过内模式DDL来定义内模式
二级映像和数据独立性
t内模式-模式映像
t模式-外模式映像
t通过两层映像保证数据库的逻辑独立性和物理独立性
内模式-模式映像
t全局和部分的关系
t对应每个外模式,数据库对应一个内模式-模式映像
t但模式改变时,外模式保持不变,应用程序不需要做相应修改:逻辑独立性
模式-外模式映像
t内模式-模式映像是唯一的
t定义数据库全局逻辑和物理存储之间的对应关系
t存储结构改变不影响数据库的逻辑结构,这称为数据库的物理独立性
8.数据库系统的组成
t硬件平台及数据库
t软件(DBMS,OS,开发工具,应用程序)
t人员 (DBA,数据分析员和设计员,应用程序员,用户)
DBA职责
t数据库内信息的内容和结构
t存储结构和存储策略
t完整性约束和安全性条件
t监控数据库运行
t数据库改进和重组
9.数据库技术的研究领域
tDBMS的研制
t数据库设计
t数据库理论