Professional Documents
Culture Documents
北京外国语大学国际商学院 杨纪成
第一章 数据库技术概述
数据库技术是计算机科学中发展最快的领域之一,也是应用最
广的技术之一,它已成为计算机信息系统与应用系统的核心技术和
重要基础。对于一个国家来说,数据库的建设规模、信息量大小和
使用频度已成为衡量这个国家信息化程度的重要标志。因此数据库
课程是计算机科学与技术专业、电子商务及信息管理等专业的基础
课程。数据库技术的重要性体现在理论与应用两个方面:
理论:
图灵奖最早设立于 1966 年,是美国计算机协会在计算机技术方
面所授予的最高奖项,被誉为“计算机界的诺贝尔奖”,主要授予
那些在计算机技术领域做出突出贡献、对计算机产业发展有长远和
重要影响的个人。迄今为止已有 41 位科学家获此殊荣。
1973 年图灵奖获得者:查尔斯 · 巴赫曼—“网状数据库之父”
1981 年图灵奖获得者:埃德加 · 科德—“关系数据库之父”
1998 年图灵奖获得者:吉姆 · 格雷—“ SQL 之父”
应用 :
近年来,随着多媒体技术、空间数据库技术和计算机
网络的飞速发展,数据库系统的发展十分迅速,应用领域
愈来愈广,事业单位、政府部门的行政管理、办公自动化
;企业生产计划管理;银行财务管理;铁路、民航飞机票
预定系统;铁路车次调度系统;宾馆、酒店房间预定系统
;卖场和超市订购与销售系统;医院病历管理;学校师资
、教学、学生学籍管理;图书馆管理;气象预报;地震,
勘探等大量数据的贮存和统计分析;公安部门罪犯档案管
理;地理信息系统;电子商务等等都离不开数据库系统。
第一节 数据管理技术的发展
1. 基本概念
数据 —是指对客观事物特征进行的一种抽
象化、符号化表示。数据可以是具体的数
字,也可以是文字、图形、图像、声音等
。
信息 —是指有一定含义的、经过加工的、
对决策有价值的数据。
数据 处理 —是指将数据转换成信息的过程。
也称信息处理。
数据 处理 信息
数据是信息的符号表示,或称作载体;信息是
数据的内涵 , 是数据的语义解释。
数据库 —是一组存储在计算机硬件设备上逻辑上相
关数据集合。这些数据主要用来描述一个或多个组
织的相关活动。
数据库作为一个数据集合具有以下特点:
2) 具有较小的冗余度
3) 较高的数据独立性和完整性
4) 可以供各种用户共享
数据 库系 统 —是指在计算机系统中引入数据库后的系
统构成,一般由硬件系统、数据库集合、数据库管
理系统及相关软件、数据库管理员和用户构成。
2. 数据管理技术的发展阶段
数据管理是指对数据的分类、组织、编码、储存、检索
和维护 , 它是数据处理的的核心。
人工管理阶段 文件系统阶段
( 50 年代中期以前 ( 50 年代后期 -60 年代中后期
) )
分布式数据库系统阶段 数据库系统阶段
( 70 年代后期) ( 60 年代后期)
图 1-
1
1 )人工 管理阶 段
该阶段没有直接存取设备、也没有操作系统及管理数据的软
件,数据处理方式是批处理。
该阶段具有如下特点:
• 数据不保存;
• 没有文件概念,由应用程序管理数据;
• 数据不共享;
• 数据不具有独立性。
应用程序 数据集
1 1
应用程序 数据集
2 2
应用程序 数据集
图 1-
n n
2
2 )文件 系统阶 段
出现了直接存取设备,在操作系统中出现了管理存放在外部存
储设备上数据的子系统—— 文件系统。
该阶段具有如下特点:
a. 数据可以长期保存;
b. 由文件系统管理数据;
c. 数据和应用程序有一定的独立性 ;
d. 数据共享性差,冗余度大。
文件系
程序
分 存
数据 程序文件
离 数据文件 取
图 1-3
3 )数据 库系统 阶段
为解决多用户共享数据的需求,使数据为尽可能多的应用
服务,数据库技术应运而生。
数据库系统的特点:
a. 数据结构化,这是数据库系统与文件系统的根本区别
b. 数据共享性高、冗余度小、易扩充
c. 数据独立性高。
应用程序 1
数据
应用程序 2 管理系统
数据
… DBMS
应用程序 n
数据独立性包括数据的物理独立性和数据的逻辑独立性。
物理 独立性 是指用户的应用程序与存储在磁盘上的数据库中的数据是相互独立的。
数据在磁盘上如何存储是由 DBMS 管理的,用户程序不需要了解,应用程序处理
的只是数据的逻辑结构,这样当数据的物理存储改变了, 应用程序不用改变。
逻辑 独立性 是指用户的应用程序与数据的逻辑结构是相互独立的,也就是说,数
据的逻辑结构改变了,用户程序可以不变。
数据与程序的独立,把数据的定义从程序中分离出去,加上数据的存取由 DBMS 负
责,从而简化了应用程序的编制,大大减少了应用程序的维护和修改。
a. 统一的数据管理和控制功能
a) 数据的安全性 (Security) 保护
b) 数据的完整性 (Integrity) 控制
c) 并发控制( Concurrency )
d) 数据库恢复( Recovery )
b. 数据的最小存取单位是数据项
4 )分布 式数据 库系 统阶段
数据库系统由硬件系统、数据库集合、数据库管理系统及相关软件、
数据库管理员和用户组成。
数据库 技术的发 展经历了三 个阶段 :
第一代数据库系统,即层次数据库系统和网状数据库系统,主要支持
层次和网状数据模型。该数据库系统的特点:
– 支持三级抽象模式的体系结构;
– 用指针来表示数据之间的联系;
– 数据定义语言和数据操纵语言相对独立;
– 数据库语言采用过程性语言。
第二代数据库系统,即关系数据库系统,主要支持关系数据模型。该
数据库系统的主要特点:
– 概念单一化,数据及其数据间的联系都用关系来表示;
– 以关系代数为理论基础;
– 数据独立性强;
– 数据库语言采用说明性语言,简化了编程难度。
第三代数据库系统,即面向对象数据库系统。该数据库系统的特点:
– 支持包括数据、对象和知识的管理;
– 引入面向对象技术;
– 对其他系统开放,具有良好的可移植性、可连接性、可扩展性和可互操作性
。
第二节 数据模型
网状数据模型的优点主要有:
– 能够更为直接地描述现实世界
– 具有良好的性能,存取效率较高
网状数据模型的缺点主要有:
– 其数据定义语言 DDL ,数据操纵语言 DML 极其复杂
– 结构比较复杂,不利于最终用户掌握
层次模型和网状模型从本质上都是一样的,都存在以下缺陷:
难以实现系统扩充,数据操纵语言复杂。
关系数 据模型
80 年代关系模型逐步代替网状模型和层次模型,把数据组织成
表的结构,所以关系数据模型是用表格形式结构来表示实体以及实
体之间联系的。
关系数据模型具有下列优点:
– 关系模型是建立在严格的数学概念的基础上的。
– 由于实体之间的联系是用关系来表示,所以关系数据模型的
概念单一,数据结构简单、清晰,用户易懂易用。
– 关系模型的存取路径对用户透明,从而具有更高的数据独立
性,更好的安全保密性。
关系数据模型最主要的缺点是:由于存取路径对用户透明,查
询效率往往不如非关系数据模型,因此为了提高性能,必须对用户
的查询请求进行优化,增加了开发数据库管理系统的负担。
关系数据模型的数据结构
一个关系模型的逻辑结构是一张二维表,它由行和列组成。关
系模型要求关系必须是规范化的,最基本的条件就是,关系的每一
个分量必须是一个不可分的数据项,即不允许表中还有表。
学 号 姓 名 年 龄 性 别 院 ( 系 ) 籍 贯 年 级
97001 李 明 20 男 计 算 机 江 苏 97
97002 张 灵 19 女 管 理 科 学 湖 南 97
97003 王 鹏 21 男 机 械 工 程 北 京 97
… … … … … …
非规范化关系
研究生
导师 专业
研究生1 研究生2
李清 管理 李华 刘颖
刘涛 管理 杨敏
关系数据模型的操纵与完整性约束
1. 关系数据模型的操纵主要包括查询、插入、删除和更新数据,这
些操作必须满足关系的完整性约束条件。
2. 关系的完整性约束条件包括三大类:实体完整性、参照完整性和
用户定义的完整性。
关系数据模型的存储结构
关系数据模型中,实体及实体间的联系都用表来表示。在数据
库的物理组织中,表以文件形式存储,每一个表通常对应一种文件
结构。
第三节 数据库系 统
数据库系统的组成:一个数据库系统包括四个主要部分:数据库、
硬件系统、软件系统和用户。
数据库 :是存储在计算机内的有组织的综合性的数据集合。
硬件系 统:是存储和运行数据库系统的硬件设备。
软件系 统:主要包括支持 DBMS 运行的操作系统及 DBMS 本身,还包
括高级语言和相应的编译软件以及一些应用开发工具软件。在软件系
统中,数据库系统的各类用户、应用程序等对数据库的各种操作都是
通过 DBMS 来完成,因此说 DBMS 是数据库系统的核心。
用户 :是使用和管理数据库的人。他们可以对数据库进行检索、存
储和维护等操作。数据库系统中有三大类主要的用户:终端用户、应
用程序员和数据库管理员 DBA 。
设计数据库时,强调的是数据库的结构;应用数据库时,关心
的是数据库中的数据。数据库中的数据经常变化,而数据库的结构
则具有相对的稳定性。
模式:是数据库中全体数据的逻辑结构和特征的描述。
实例:模式的一个具体值称为模式的一个实例。
模式是相对稳定的,它反映的是数据的结构及其联系;而实
例是相对变动的,反映的是数据库某一时刻的状态。
数据 库系 统的三级 模式 结构
要使一个数据库系统能够有效地运行,必须有效地对数据进行
存储,这就导致了相当复杂的数据结构。为了方便用户,必须采用
某种方法屏蔽掉一些复杂的细节,简化用户与系统的交互行为。数
据库系统的三级模式结构就是因此而产生。
数据库系统的三级模式结构是指数据库系统是由外模式、逻辑
模式和内模式三级抽象模式构成,这是数据库系统的体系结构。三
级抽象模式在数据库系统中都存储于数据库系统的数据字典中,是
数据字典的最基本的内容,数据库管理系统通过数据字典来管理和
访问数据模式。
外模式
外模式也称用户模式,它是数据库用户能够看见和使用的局部
数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某
一应用有关的数据的逻辑表示。
外模式通常是逻辑模式的子集。一个数据库可以有多个外模式。
由于它是各个用户的数据视图,如果不同的用户在应用需求、看待
数据的方式、对数据的保密性方面存在差异,则其外模式描述是不
同的。
外模式是保证数据安全性的一个有力措施。每个用户只能看见
和访问所对应的外模式中的数据,数据库中的其余数据不可见的。
逻辑模 式
逻辑模式是数据库中全体数据的逻辑结构和特征的描述,是所
有用户的公共数据视图。它是数据库系统模式结构的中间层,与数
据的物理存储细节和硬件环境无关,也与具体的应用程序无关。
一个数据库只有一个逻辑模式。数据库逻辑模式以某一种数据
模型为基础,统一综合地考虑了所有用户的需求,并将这些需求有
机地结合成一个逻辑整体。定义模式时,不仅要定义数据的逻辑结
构,例如:数据记录由哪些数据项组成,数据项的名称类型、类型
、取值范围等,而且要定义数据之间的联系,定义与数据相关的安
全性、完整性要求等。
内模式
内模式也称存储模式,一个数据库只有一个内模式。它是数据
物理结构和存储方式的描述,是数据库内部的表示方法。
数据库的 二级 映象功 能
数据库系统的三级模式是对数据的三个抽象级别,为了能够在
内部实现这三个抽象层次的联系和转换,数据库管理系统在这三级
模式之间提供了两层映象:
– 外模式 / 逻辑模式映象
– 逻辑模式 / 内模式映象
外模式 / 逻辑模式 映象
对应于同一个逻辑模式可以有任意多个外模式。对于每一个外
模式,数据库系统都有一个外模式 / 逻辑模式映象,它定义该外模
式与逻辑模式之间的对应关系。
数据的 逻辑独 立性
当逻辑模式改变时,则数据库管理员对各个外模式 / 逻辑模式
的映象作相应改变,可以使外模式保持不变,由于应用程序是依据
数据的外模式编写的,从而应用程序不必修改,保证了数据与程序
的逻辑独立性,简称数据的逻辑独立性。
逻辑模 式 / 内模式 映象
数据库中只有一个逻辑模式,也只有一个内模式,所以逻辑模
式 / 内模式映象是唯一的,它定义数据库全局逻辑结构与存储结构
之间的对应关系。
数据的 物理 独立性
当数据库的存储结构发生改变时,由数据库管理员对逻辑模式
/ 内模式映象作相应改变,可以使逻辑模式保持不变,从而应用程序
也不必改变,保证了数据与程序的物理独立性,简称数据的物理独
立性。
数据库 系统的 三级 模式结 构
用户 1 用户 2
外模式 1 外模式 2
外模式 / 逻辑模式映
象
逻辑模式
逻辑模式 / 内模式映
象
内模式
数据库
数据库 管理 系统
数据库管理系统( DBMS )是数据库系统的核心,是为数据库的
建立、使用和维护而配置的软件,它建立在操作系统的基础上,是
位于操作系统与用户之间的一层数据管理软件。
用户对数据库的一切操作,都是通过 DBMS 来进行的,通常需要
以下四个步骤:
( 1 )用户使用某种数据子语言(如 SQL )发出数据访问请求;
( 2 ) DBMS 接受访问请求并进行分析;
( 3 ) DBMS 依次检查用户外模式、相应的外模式 / 逻辑模式映象、
逻辑模式、逻辑模式 / 内模式映象及存储结构定义;
( 4 ) DBMS 对数据库执行必要的操作。
数据库管 理系 统的组 成
–友好的用 户界 面
–比较完备 的功 能
–较高的运 行效 率
–清晰的系 统结 构
–开放性
所谓开放 性是 指数据 库设 计人员 能够 根据自 己
的特殊需 要, 方便地 在一个 DBM S 中加入 一些 新的工
具模块, 这些 外来的 工具模 块可 以与该 DBM S 紧密结
合,一起 运行 。
本章小结
1. 本章概述了数据库的基本概念,并通过对数据管理进展情况的
介绍,阐述了数据库技术产生和发展的背景,说明了数据库系
统的优点。
• 数据模型是数据库系统的基础。本章介绍了概念模型、数据模
型的三个要素和三种主要的数据库模型。
• 数据库系统的组成以及数据库系统三级模式和两层映象的系统
结构保证了数据库系统中能够具有较高的逻辑独立性和物理独
立性。
学习 方法:学习这一章应把注意力放在掌握基本概念和基本知
识方面,为进一步学习以后章节打好基础。本章新概念较多,
如果是刚开始学习数据库,可在学习后面章节后再回来理解和
掌握这些概念。