数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 1页第 1章 步入数据库系统世界本章概述本章的学习目标主要内容数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 2页本章概述
本书将要全面讲述数据库系统的原理和应用。
通过本书的学习,读者不仅可以掌握数据库系统的基本原理,而且可以掌握使用具体的数据库产品技术和从事数据库应用开发技术。
对于一个数据库技术专业人员来说,仅掌握“怎样做”的技术应用是不够的,更重要的是需要理解和掌握“为什么这样做”的技术理论。
本章作为开场白,将要把读者带入到数据库系统的世界,为他们提供一个有关数据库系统的清晰轮廓。
数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 3页本章的学习目标
了解数据库技术的应用现状和作用;
了解当前数据库市场上的主流产品;
了解数据库应用开发的基本过程;
掌握数据库技术的发展历史和各阶段的特征;
理解数据库中数据的存储、管理和应用架构;
理解数据库管理系统的架构和各个组成部分的作用;
了解当前数据库面临的挑战;
掌握数据库技术的未来发展趋势。
数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 4页主要内容
1.1 概述
1.2 数据库技术的演变
1.3 数据库系统架构
1.4 数据库管理系统组件
1.5 数据库技术的发展趋势
1.6 本章小结数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 5页
1.1 概述
数据库系统应用示例
数据库系统的作用
常见的数据库系统
数据库应用程序的开发过程数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 6页航空售票系统
该系统可能是最早使用数据库技术的应用领域。在这种系统中,包括这些数据项:
座位预定信息:座位分配、座位确认、餐饮选择等;
航班信息:航班号、飞机型号、机组号、起飞地、目的地、起飞时间、到达时间、飞行状态等;
机票信息:票价、折扣、有无等。
对这种系统的查询主要是在某一段时间内从某个指定的城市到另一个指定的城市的航班,是否还有可以选择的座位、
是否有其他飞机型号、飞机票价、是否折扣等信息。
对该系统的主要更新操作包括为乘客登记航班、分配座位、
选择餐饮等。
数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 7页银行业务系统
银行业务的繁忙状态是社会经济发展的标志。银行业务系统也是最早使用信息技术或数据库技术的系统之一。在银行业务系统中,典型的数据项包括:
顾客信息:姓名、身份证号码、地址、电话等信息;
账户信息:账号、存款、余额、取款、日期等信息;
顾客和账户关系信息:顾客、账户等信息。
数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 8页超市的销售业务系统
现在,超市购物由于其种类繁多的商品、较低的价格、选物的便利已经成为人们日常生活的一个重要组成部分。数据库技术是超市取得成功的重要技术基础。在超市的销售业务系统中,主要的数据项为:
销售信息:连锁点、日期、时间、顾客、商品、数量、
总价等;
商品信息:商品名称、单价、进货数量、供应商、商品类型、商品布局等;
供应商信息:供应商名称、地点、商品、信誉等。
数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 9页工厂的管理信息系统
工厂的管理信息系统 (Management Information
System,MIS)是最早依据数据库技术建立的一个比较完整的集成系统。
在这种 MIS系统中,主要包括了下面一些数据项:
销售记录:产品、服务、客户、销售人员、时间等;
雇员信息:姓名、地址、工资、津贴、所得税款等;
财务信息:合同、应收货款、应付货款等。
数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 10页学校教学管理系统
学校教学管理系统主要是涉及学生、教师、教室、
课程、排课等信息的管理。该系统包括的典型数据项如下:
学生信息:姓名、学号、性别、班级、年龄、宿舍、
电话,E-mail地址等;
教师信息:姓名、工作证号、性别、年龄、学历、教研室、住址、电话,E-mail地址等;
教室信息:教室号、位置、座位、类型等;
课程信息:课程名称、指定教材、学时、学分等;
排课信息:课程名称、教室、班级、教师名称等。
数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 11页图书管理系统
图书管理系统也是数据库技术应用的一个典型领域。在图书管理系统中,主要的数据项包括:
图书信息:书号、书名、作者姓名、出版日期、类型、
页数、价格、出版商名称等;
作者信息:姓名、身份证号、性别、出生日期、学历、
住址、电话等;
出版社信息:名称、地址、社长、成立日期等;
读者信息:姓名、借书号、书名、借书日期、借书数量等。
数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 12页数据库系统的作用
当初步了解了数据库系统的应用之后,我们再来总结一下数据库系统的作用。数据库是许多数据的集合,而数据库管理系统 (DataBase
Management System,DBMS)就是管理这些数据集合的计算机软件系统,数据库管理系统也可以简称为数据库系统。
一般地,数据库系统主要用来
管理大量数据
控制多用户访问
定义数据库构架
执行数据库操作数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 13页管理大量数据
前面那些数据库技术的应用示例给我们了这种感觉,即数据库技术应用在管理大量数据的地方。
这是我们之所以使用数据库的第一个原因,即存储大量的数据。
大量的数据到底有多大呢?在写作本书的时候,
数据库市场上最先进的数据库产品能支持 10TB级的数据。
10TB的数据是一个怎样的概念呢?
数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 14页数据库定义功能
为了存储大量数据,需要定义数据库和数据库中的各种架构,例如表、视图、索引等对象。
对一个具体的数据库系统来说,允许用户使用一种称为数据定义语言 (Data
Definition Language,DDL)的专门语言来建立数据库,指定数据库的架构。并且还可以对这些数据库和数据库架构进行修改和删除。
数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 15页数据查询功能
当数据存储到数据库中之后,用户就可以使用其中的数据。
数据库系统提供了可以查询数据库中数据的查询
(Query)语言,这种语言也可以称为数据操纵语言
(Data Manipulation Language,DML)。
使用该语言可以在数据库中执行这些操作,例如,
检索指定的数据、插入需要的数据、修改变化的或错误的数据、删除无用的数据等。
数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 16页控制多用户的访问
对于存储大量数据的数据库应用系统来说,
会有许多各种各样的使用数据的用户。
控制多用户的访问包括两层含义:
第一层含义是不同的用户只能使用适合自己需要的数据和执行允许自己执行的操作
第二层含义是不同用户的操作互不影响。
数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 17页常见的数据库系统
Oracle
Microsoft SQL Server
Sybase ASE
IBM DB2
MySQL
Microsoft Access
Visual FoxPro
数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 18页数据库应用程序的开发过程
一般地,用于数据库应用程序开发的方法主要包括结构化生命周期法和原型化法。
结构化生命周期法要求把信息系统的开发方法从初始到结束划分成若干个预先规定好任务的阶段,然后按照一定的准则来按部就班地完成。
原型化法是一种考虑到人本身的灵活、多变、依经验行事的特点而产生的信息系统开发方法,其基本思想是:并非所有的需求都能预先明确地定义,反复修改是必要的、不可避免的。
在结构化生命周期法中,数据库应用程序开发包括调查研究、系统分析、系统设计、系统实施、系统评价五个阶段。
数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 19页主要内容
1.1 概述
1.2 数据库技术的演变
1.3 数据库系统架构
1.4 数据库管理系统组件
1.5 数据库技术的发展趋势
1.6 本章小结数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 20页
1.2 数据库技术的演变
数据库技术的演变主要是数据库系统从文件管理阶段过渡到数据库管理系统阶段的发展历程。
数据库系统随着信息技术的发展而发展。
信息技术的发展基础是硬件性能和软件工具的共同发展和越来越广泛的数据处理范围,因此数据库技术也是随着硬件技术和软件技术的发展而演变。
数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 21页传统的文件管理阶段数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 22页数据库管理系统阶段
传统的文件管理存在的许多问题在 20世纪 60年代末得到了解决。
标志传统的文件管理数据阶段向现代的数据库管理系统阶段转变的三件大事是:
1968年,IBM公司推出了商品化的基于层次模型的
IMS系统。
1969年,美国 CODASYL组织下属的 DBTG发布了一系列研究数据库方法的 DBTG报告,该报告奠定了网状数据模型的基础。
1970年,IBM公司的研究人员 E,F,Codd连续发表论文,提出了关系模型,奠定了关系型数据库管理系统的基础。
数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 23页数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 24页数据库管理系统阶段特点
使用复杂的数据模型表示结构。
具有很高的数据独立性。
为用户提供了方便的接口。
提供了完整的数据控制功能。这些功能包括并发性、完整性、可恢复性、安全性和审计性。
提高了系统的灵活性。
数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 25页主要内容
1.1 概述
1.2 数据库技术的演变
1.3 数据库系统架构
1.4 数据库管理系统组件
1.5 数据库技术的发展趋势
1.6 本章小结数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 26页
1.3 数据库系统架构
数据库系统架构指数据库系统中数据的存储、管理和使用等规范形式,包括:
数据存储架构
数据视图管理架构
数据库应用架构数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 27页数据存储架构
数据存储架构就是指数据库中物理数据和逻辑数据的表示形式、物理数据和逻辑数据之间关系映射方式的说明。
在数据库系统中,可以使用两种描述形式表示客观世界的数据,即
物理数据描述,物理数据描述指数据在存储设备上的存储方式,
物理数据是实际存放在存储设备上的数据,这些数据也可以称为物理记录。
逻辑数据描述,逻辑数据描述指用户或程序员用来操作的数据形式,逻辑数据是一种抽象的概念,是对客观现实世界的反映和记录,这些数据也可以称为逻辑记录。
物理数据和逻辑数据之间的转换通过数据库管理系统来实现。
数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 28页逻辑数据和物理数据术语的对应关系示意图数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 29页数据视图管理架构
数据在存储过程中的不同阶段具有不同的表现形式。这种数据的不同表现形式也可以称为数据视图 (data view)。
数据视图就是从某个角度看到的数据特性。
数据视图管理架构指在数据库系统中如何使用数据视图定义和管理各种逻辑数据和物理数据。
目前,数据视图管理架构使用三模式方法,也就是说需要从三个不同的角度来定义数据:外模式、
内模式和概念模式。
数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 30页数据视图管理架构示意图数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 31页数据库应用架构
在一个数据库应用系统中,包括数据存储层、业务处理层和界面表示层等三个层次。
数据存储层就是完成对数据的各种维护操作,一般是由数据库系统来完成该层上的工作。
业务处理层就是数据库应用将要处理的与用户紧密相关的各种业务操作,
这一层次的工作通常使用有关程序设计语言的编程来完成。
界面表示层是数据库应用系统提供给用户的可视化操作界面,是用户提出请求和接收回应的地方。
数据库应用架构就是指数据库应用系统中数据存储层、业务处理层、
界面表示层以及网络通讯之间的布局和分布。
根据目前数据库系统的应用和发展,可以把这些应用归并为五类,即
单用户数据库应用架构
集中式数据库应用架构
客户机 /服务器 (Client/Server,C/S)应用架构
多层数据库应用架构
Internet数据库应用架构数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 32页主要内容
1.1 概述
1.2 数据库技术的演变
1.3 数据库系统架构
1.4 数据库管理系统组件
1.5 数据库技术的发展趋势
1.6 本章小结数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 33页
1.4 数据库管理系统组件数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 34页数据和元数据
数据是数据库管理系统管理的对象。
元数据就是有关数据结构的信息,简单地说,元数据就是描述数据的数据。
在关系型数据库管理系统中,数据就是用户填加到表中的数据,元数据就是描述有关表名、列名、
数据类型等数据库对象的数据。
例如,在 Microsoft Access中的 Northwind数据库中,用户表“订单”中的数据就是表中的业务信息,描述该“订单”表结构的数据是元数据数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 35页输入
对数据库管理系统的输入操作包括查询、修改和模式修改。
查询是针对数据的操作。为了执行数据库的查询,
可以通过两种方式。一种方式是通过普通的查询界面,另外一种方式是通过应用程序界面。
修改是对数据的修改。像查询一样,修改也可以通过两种方式来执行,一种方式是通过 DBMS系统的查询界面,另一种方式是通过应用程序界面。
模式修改是对元数据的修改。
数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 36页查询处理器
查询处理器不仅负责处理查询,还负责处理修改和模式修改请求。
查询处理器包括编译器、解释器和预编译器:
编译器负责对查询或修改语句进行优化并且转换成可以执行的低层命令。
解释器负责编译或解释模式修改,并且把它记录在元数据中。
预编译器完成嵌入在宿主语言中的查询语句。
查询处理器设法找到一个最佳方式来执行请求的操作。查询规划是最优的一系列执行查询语句的步骤。
数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 37页存储管理器
存储管理器是根据获得的请求信息,从数据存储中获得信息或修改数据存储中的信息。
在一个简单的数据库系统中,存储管理器实际上就是操作系统的文件系统。然而,为了提高数据库的使用效率,DBMS通常直接控制存储在磁盘上的数据。
存储管理器由两个组件组成:
文件管理器负责跟踪磁盘上文件的位置或根据内存管理器中的请求获得数据块。
缓冲区管理器负责内存的管理。
数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 38页事务管理器
事务管理器负责系统的完整性工作。事务管理器必须确保同时运行的查询语句不互相影响,即使是系统由于种种原因突然失败,系统也不会丢失任何数据。
事务管理器与查询处理器互相影响。
事务管理器还与存储管理器互相影响。
事务管理器具有 ACID属性:
A表示原子性 (Atomicity)
C表示一致性 (Consistency)
I表示独立性 (Isolation)
D表示持久性 (Durability)
数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 39页主要内容
1.1 概述
1.2 数据库技术的演变
1.3 数据库系统架构
1.4 数据库管理系统组件
1.5 数据库技术的发展趋势
1.6 本章小结数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 40页
1.5 数据库技术的发展趋势
数据库技术面临的挑战
数据库技术的未来数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 41页数据库技术面临的挑战
在许多新的数据库应用领域前面,传统的数据库技术和系统显得力不从心,对传统的数据库技术和研究工作提出了挑战。数据库技术面临的挑战主要表现在以下几个方面:
环境的变化。数据库系统的应用环境由可控制的环境变成多变的异构信息集成环境和 Internet环境。
数据类型的变化。数据库中的数据类型由结构化扩大至半结构化、
非结构化和多媒体数据类型。
数据来源的变化。大量数据将来源于实时和动态的传感器或监测设备,需要处理的数据量成倍剧增。
数据管理要求的变化。许多新型应用需要支持协同设计和工作流管理。
为了应付这些挑战,有两条可行的途径:
第一条可行途径是扩充原有思想和技术
第二条可行路径是拓宽研究思路,研究全新的技术数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 42页数据库技术的未来
从当前的客观需求和研究状况来看,数据库技术的发展趋势主要是:
可以执行分布式处理的分布式数据库技术
可以处理复杂对象的面向对象数据库技术
可以处理多媒体海量数据的多媒体数据库技术
可以对数据库中数据进行多维和历史分析的数据仓库技术
可以支持长事务和协调处理的工作流数据库技术
可以存储空间位置信息的空间数据库技术
可以支持个人应用的移动数据库以及基于 Web的数据库技术数据库系统原理与应用教程 (第二版 ) 第 1章 步入数据库系统世界 第 43页主要内容
1.1 概述
1.2 数据库技术的演变
1.3 数据库系统架构
1.4 数据库管理系统组件
1.5 数据库技术的发展趋势
1.6 本章小结