数据库系统讲义_第1页
数据库系统讲义_第2页
数据库系统讲义_第3页
数据库系统讲义_第4页
数据库系统讲义_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《数据库技术及应用》

第一讲数据库技术基础

(一)数据管理技术的进展

数据管理技术的进展,与硬件(主要是外存)、软件、计算机应用的范围有亲

密联系。数据管理技术的进展经受了三个阶段:人工阶段、文件系统阶段和数据

库阶段。

1.人工阶段(20世纪50年月中期以前)

数据管理特点为:

•数据不保存在机器中

•没有专用的软件对数据进行管理

•只有程序的概念,没有文件的概念

•数据面对应用

2.文件系统阶段(20世纪50年月后期至60年月中期)

数据管理的特点为:

•数据可长期保存在外存的磁盘上

•数据的规律结构与物理结构有了区分

•文件组织已呈现多样化,有索引文件、链接文件和散列文件等

•数据不再属于某个特定的程序,可以重复使用

3.数据库阶段(20世纪60年月末开头至今)

数据管理的特点为:

•采纳简单的数据模型表示数据结构

•有较高的数据独立性

•数据库系统为用户供应便利的用户接口,用户可以使用查询语言

或终端命令操作数据库,也可以用程序方式操作数据库

•系统供应数据库的恢复、并发掌握数据完整性和数据平安性四个

方面的数据掌握功能,以保证数据库是平安的、正确的和牢靠的;对数

据的操作可以以纪录为单位,也可以以数据项为单位

(二)数据描述

1.在数据处理中,数据描述将涉及三个领域:现实世界、信息世界和机器

世界。

•现实世界是存在于人们头脑之外的客观世界

•信息世界是现实世界在人们头脑中的反映,人们把它用文字和符

号登记载下来。信息世界中数据描述的述术语有实体、实体集、属性和

实体标识符

•机器世界中信息世界的信息以数据形式存储。机器世界中数据描

述的术语有字段、纪录、文件和关键码。

机器世界中的术语和信息世界中的术语有对应关系。在数据库中,每个

概念都有类型

和值的区分,类型是概念的内涵,而值是概念的外延。

2.数据描述有物理描述和规律描述两种形式。

•物理数据描述是指数据在存储设施上的存储方式。物理数据是实

际存放在存储设施上的数据;

•规律数据描述是指程序员或用户用以操作的数据形式,是抽象的

概念化数据。

3.依据访问数据的速度、成本和牢靠性,计算机系统的存储介质分为六类:

高速缓冲存储器、主存储器、快擦写存储器、磁盘存储器、光存储器和磁带。存

储介质组成了计算机系统的三个存储层次:基本存储器、帮助存储器(联机存储

器)和第三级存储器(脱机存储器)。物理存储中的数据描述的术语有:位、字节、

字、块、桶和卷。

(三)数据模型

数据模型一一表示实体类型及实体间联系的模型。

目前广泛使用的数据模型可分为两种类型:概念数据模型和结构数据模型

1.概念数据模型

概念数据模型是指独立于计算机系统的模型,完全不涉及信息在系统中的表

示,只是用来描述某个特定组织所关怀的信息结构。这一类中闻名的模型是“实

体联系模型",简称ER模型。ER模型是直接从现实世界中抽象出实体类型及实

体间联系,然后用ER图表示的数据模型。ER图包括四个基本成分:矩形框、菱

形框、椭圆形框和直线。

2.结构数据模型

(四)数据库的体系结构

1.数据库具有概念模式、外模式、内模式三级结构和外模式/膜式映象、模

式/内模式映象两级映象。

(1)概念模式

概念模式是对数据库中全部数据的整体规律结构的描述,它由若干个概念纪

录类型组成。

(2)外模式

外模式是用户与数据库的接口,是用户用到的那部分数据的描述,它由若干

个外部记类

型组成。

(3)内模式

内模式是数据库在物理存储方面的描述,定义全部的内部纪录类型、索引和

文件的组织方式,以及数据掌握方面的细节。

(4)外模式/模式映象

它存在于外部级和概念级之间,用于定义外模式和概念模式间的对应性,一

般在外模式中描述。

(5)模式/内模式映象

存在于概念级和内部级之间,用于定义概念模式和内模式间的对应性,一般

在内模式中描述。

2.数据库系统具有数据独立性的特点。数据独立性分为物理数据独立性和

规律数据独立性两级。

(1)物理数据独立性

是指对内模式的修改尽量不影响概念模式,当然对于外模式和应用程序的影

响更小。

(2)规律数据独立性

是指对概念模式的修改尽量不影响外模式和应用程序。

3.用户

用户是指使用数据库的应用程序或联机终端用户。数据库管理系统供应数据

操纵语言(DNL)让用户或程序员使用。依据使用方式的不同,DML可分类自含型

DML(又称交互型DML)和嵌入型DML(又称宿主型DML)两类。宿主语言是指编写应

用程序的语言。用户界面是用户和数据库系统间的一条分界线。

(五)数据库管理系统

数据库管理系统(DBMS)是指数据库系统中管理数据的软件系统。DBMS是数

据库系统的核心组成部分。对数据库的一切操作,包括定义、查询、更新及各种

掌握,都是通过DBMS进行的。DBMS的主要功能有:

①数据库的定义功能:DBMS供应数据定义语言定义数据库的三级结构,

包括外模式、概念模式、内模式及其相互之间的映象,定义数据的完整性、

完全掌握等约束。

②数据库的操纵功能:DBMS供应数据操纵语言实现对数据库中数据的

操作

③数据库的爱护功能:DBMS对数据库的爱护主要通过数据库的恢复、

数据库的并发掌握、数据库的完整掌握等四个方面实现。

④数据库的存储管理:DBMS的存储管理子系统供应了数据库中数据和

应用程序的一个界面,其职责是把各种DML语句转换成低层的文件系统命令,

起到数据的存储、检索和更新的作用。

⑤数据库的维护功能:DBMS中实现数据库维护功能的有用程序主要有

数据装载程序、备份程序、文件重组织程序和性能监控程序。

⑥数据字典(DD):数据库系统中存放三级结构定义的数据库称为数据

字典,对数据库的操作都要通过访问DD才能实现。

说明:从模块结构观看,DBMS有查询处理器和存储处理器两大部分

组成。用户访问数据的过程即是应用程序通过DBMS读取写人数据库中纪

录的过程。

(六)数据库系统

数据库系统是一个实际可运行的,依据数据库方法存储、维护和向应用系统

供应数据支持的系统,它是数据库、硬件、软件和数据库管理员(DBA)的集合体。

数据库是与一个特定组织各项应用有关的全部数据的集合,它包括物理数据

库和描述数据库两大部分。硬件包括中心处理机、内存、外存、输入设施、数据

通道等硬件设施。软件包括DBMS、OS、各种宿主语言和应用开发支撑软件等程

序。

DBA是掌握数据整体结构的人,负责DBS的正常运行。

依据模块结构划分,DBS的全局结构如下:

①数据库用户。包括四类,即DBA、专业用户、应用程序员、最终用户

②DBMS的查询处理器。包括四部分,即DML编译器、嵌入型DML的预

编译器、DDL编译器、查询运行核心程序

③DBMS的存储管理器。包括四部分,即授权和完整性管理器、事务管

理器、文件管理器、缓冲管理器

④磁盘存储器中的数据结构:包括四种形式,即数据文件、数据字典、

索引文件、统计数据组织。

在应用中,DBS的效益具体表现在七个方面,即敏捷性、简易性、面对用户、

数据掌握、程序设计便利使应用系统的开发速度加快、削减了程序维护的工作量、

标准化。

其次讲关系数据库系统

(一)关系数堀库系统概还

1.关系数据库系统

关系数据库系统是支持关系数据模型的数据库系统。

30年来,关系数据库系统的争论取得了辉煌的成就。关系方法从试验室走

向了社会,涌现出很多性能良好的商品化关系数据库管理系统(ROBMS)。如闻名

的IBMDB2,Oracle,Ingres,SYBASE,Informix等。数据库的应用领域快速扩

大。

2.关系数据模型

关系数据模型由关系数据结构、关系操作集合和关系完整性约束3大要素组

成。

(二)关系模型的数据结构

1.关系模型的数据结构和基本术语

(1)关系(relation):一个关系对应一个二维表,二维表名就是关系名。

(2)属性(attribute)和值域(domain):在二维表中的列(字段),称为属

性。属性的个数称为关系的元数,列的值称为属性值;属性值的取值范围称

为值域。

(3)关系模式(relationschema):在二维表中的行定义(纪录的型),即

对关系的描述称为关系模式,一般表示为:

关系名(属性1,属性2,…,属性n)

(4)元组(tuple):在二维表中的一行(纪录的值),称为一个元组。关系

模式和元组的集合通称为关系。

(5)重量(component):元组中的一个属性值

(6)候选码(candidatekey)或候选键:假如在一个关系中,存在多个属

性(或属性组合)都能用来惟一标识该关系的元组,这些属性(或属性组合)

都称为该关系的候选码或候选键。

(7)主码(primarykey)或主键:在一个关系的若干个候选码中指定一个用来

惟一标识该关系的元组,这个被指定的候选码称为该关系的主码或主键。

(8)主属性(primaryattribute)和非主属性(nonprimaryattribute):关

系中包含在任何一个侯选码中的属性称为主属性或码属性,不包含在任何一

个候选码中的属性称为非主属性或非码属性。

(9)外码(foreignkey)或外键:当关系中的某个属性(或属性组)虽然不

是该关系的主码或只是主码的一部分,但却是另一个关系的主码时,称该属

性(或属性组)为这个关系的外码。

(10)参照关系(referencingrelation)与被参照关系

(targetrelation):参照关系也称从关系,被参照关系也称主关系,它们是

指以外码相关联的两个关系。以外码作为主码的关系成为被参照关系;外码

所在的关系称为参照关系。

(见P54“概论”)

2.关系的形式定义和关系数据库对关系的限定

(1)关系的形式定义

(2)关系数据库对关系的限定

①每一个属性是不行分解的。

②每一个关系模式中属性的数据类型以及属性的个数是固定的,并

且每个属性必需命名,在同一个关系模式中,属性名必需是不同的。

③每一个关系仅仅有一种纪录类型,即一种关系模式。

④在关系中元组的挨次(即行序)是无关紧要的。

⑤在关系中属性的挨次可任意交换,交换时应连同属性名一起交换才行,

否则挨次是重要的。

⑥同一个关系中不允许消失完全相同的元组。

(三)关系模型的完整性约束

1.数据库数据完整性规章的分类

数据完整性由完整性规章来定义,关系模型的完整性规章是对关系的某种约

束条件。关系模型中可以有三类完整性约束:实体完整性、参照完整性和用户定

义的完整性。

2.实体完整性规章

实体完整性规章是对关系中的主属性值的约束o

3.参照完整性规章

现实世界中的实体之间往往存在某种联系,在关系模型中实体及实体间的联

系都是用关系来描述的,这样就自然存在着关系与关系之间的参照(引用)。

4.用户定义的完整性

用户定义的完整性通常是定义对关系中除主码与外码属性外的其他属性取

值的约束,即对其他属性的值域的约束。

对属性的值域的约束也称为域完整性规章(domainintegrityrule),是对关

系中属性取值

的正确性限制,包括数据类型、精度、取值范围、是否允许空值等。取值范

围又可分为静态定义和动态定义两种:

•静态定义取值范围是指属性的值域范围是固定的,可从定义值的集

合中提取特定值;

•动态定义取值范围是指属性的值域范围依靠于另一个或多个其他属

性的值。

(四)关系代数

关系代数的运算可分为两类:

①传统的集合运算这类运算将关系看成是元组的集合,其运算是从关系的

“水平”方向,即行的角度来进行的,有:并、交、差、广义笛卡尔积。

②特地的关系运算这类运算不仅涉及行而且涉及列,有:选择、投影、连接、

除。

1.传统的集合运算

传统的集合运算是二目运算,包括并、交、差、广义笛卡尔积4种运算。

2.特地的关系运算

特地的关系运算主要包括:对单个关系进行垂直分解(投影操作)或水平分解

(选择操作)和对多个关系的结合(连接操作)等。

第三讲关系数据库标准语言SQL

(一)SQL概述

关系数据库SOL语言是介乎于关系代数和元组演算之间的一种语言,广泛应

用于商用系统中,是关系数据库的标准语言。SQL是SEQUEL的简称,其前身是

SQUARE语言。

SQL数据库的体系结构基本上也是三级结构。在SOL中,关系模式称为“基

本表”,存储模式称为“存储文件”,子模式称为“视图”。

SQL数据库的体系结构有六个要点。

SQL主要由数据定义、数据操纵、数据掌握和嵌入式SQL的使用规定四部分

组成。

(二)SQL的数据定义

SOL的数据定义部分也称为“SQLDDL',,用于定义SQL模式、基本表、视图

和索引。该部分包括对SQL模式、基本表、视图和索引的创建和撤消操作。

SQL的数据定义语句有:SQL的模式创建语句和撤消语句,基本表的创建、

修改和撤消语句,视图的创建和撤消语句,索引的创建和撤消语句。

SQL供应的数据类型主要有数值型、字符串型、位串型和时间型四种。SQL

允许在这四种域上执行比较操作,但算术操作只限于数值型。SQL2允许用户使

用“CREATEDOMAIN”语句定义新的域。

(三)数据查询

SQL的数据查询属于SOL的数据操纵部分,即“SQLDML”部分。SOL的数据查

询用SELECT语句来实现。

SELECT语句能表达全部的关系代数表达式。假如一个查询涉及多个基本表,

则SELECT语句可有多种写法,即嵌套查询、联接查询、使用存在量词的嵌

套查询等。

SELECT语句完整的句法如下:

SELECT目标表的列名或列表达式序列

FROM基本表和(或)视图序列

[WHERE行条件表达式]

[GROUPBY列名序列]

[HAVING组条件表达式]

[ORDERBY列名[ASC|DESC]…]

其执行过程为:

(1)读取FROM子句中基本表、视图的数据,执行笛卡尔积操作;

(2)选取满意WHERE子句中给出的行条件表达式的元组;

(3)按GROUP子句中指定列的值分组,同时提取满意HAVING子句中组条

件表达式的那些组;

(4)按SELECT子句中给出的列名或列表达式求值输出;

(5)ORDER子句对输出的目标表进行排列。

(四)SOL的数据更新

SQL的数据更新也属于SQL的数据操纵部分,包括数据插入、删除和修

改三种操作。基本表的数据更新语句包括:元组值的插入语句,查询结果的

插入语句,数据的删除语

句和修改语句。

对于视图元组的更新操作有三条规章:

(1)假如一个视图是从多个基本表使用联接操作导出的,则不允许对这个视

图执行更新操作;(2)假如在导出视图的过程中,使用了分组和聚合操作,则不

允许对这个视图执行更新操作;(3)假如视图是从单个基本表使用选择、投影操

作导出的,并且包含了基本表的主键或某个

候选键,那么这样的视图称为“行列子集视图”,并且可以被执行更新操作。

SQL2中,允许更新的视图在定义时,必需加—YWITHCHECKOPTION”短语。

(五)嵌入式SOL

SQL语言有两种方式:一种是在终端交互方式下使用,称为交互式SQL;另

一种是嵌入在高级语言的程序中使用,称为嵌入式SQL。嵌入式SQL的实现有两

种处理方式:一种是扩充宿主语言的编译程序,使之能处理SQL语句;另一种是

采纳预处理方式。目前多数系统采纳预处理方式。

在嵌入式SQL中,共享变量是SQL和宿主语言的接口。SQL2规定,SQLSTATE

是一个特别的共享变量,起着解释SQL语言执行状况的作用。

在宿主语言的程序中使用SQL语句有以下规定:

(1)在程序中要区分SQL语言与宿主语句。全部SQL语句前必需加上前

缀标识"EXECSQL’,并以"ENDEXEC”作为语句结束标志。结束标志在不同的宿

主语言中是不同的。

(2)允许嵌入的SQL语句引用宿主语言的程序变量,但在引用时,这些

变量前必需加昌号“:”作为前缀标识,以示与数据库中变量有区分,而且这

些变量必需先由宿主语言的程序定义,并用SQL的DECLARE语句说明。

(3)用游标机制协调SQL的集合处理方式与宿主语言单纪录处理方式。

与游标有关的SQL语句有四个,即游标定义语句、游标打开语句、游标推动

语句、游标关闭语句。

SQLDDL语句,只要加上前缀标识"EXECSQL”和结束标志"ENDEXEC”就能嵌入

在宿主语言程序中使用。而SQLDML语句在嵌入使用时,还要留意是否使用了游

标机制。

(1)若是INSERT,DELETE和UPDATE语言,则不必涉及游标,只要加上前

缀标识和结束标志就能嵌入在宿主语言程序中使用。

(2)若是已知查询结果确定是单元组的SLLECT语句,则不必涉及游标,

也可加上前缀标识和结束标志后嵌入在宿主语言程序中使用,但此时应当在

SELECT语句中增加一个INTO子句,指出找到的值应送到相应的共享变量中

去。

(3)若是已知查询结果为多个元组的SELECT语句,则必需涉及到游标,

用游标机制把多个元组一次一个地传送给宿主语言程序处理。

游标在推动时只能沿查询结果中元组挨次从头到尾一行行推动,并且不能返

回,这给使用带来不便。为此,SQL2供应了卷游标技术来解决这一问题。卷游

标在推动时可以进退自如。

第四讲关系数据库的法律规范化理论与数据库设计

(一)关系模式的设计问题

给出一组数据,如何构造一个适合于它们的数据库模式,这是数据库设计的

问题。

关系数据库设计理论主要包括三个方面的内容:数据依靠,范式,模式设计

方法。其中数据依靠起着核心作用。

把现实问题的全部属性组成一个关系模式,记为R(U),它由属性集U和U

上成立的数据完整性约束集组成。关系r是关系模式R(U)的当前值,是一个元

组的集合。这里的关系模式和关系一般称为泛关系模式和泛关系。用一个关系模

式的集合P={R1,R2,ooo,RJ来代替R,其中每个Ri(IWiWk)的属性是U的子

集。这里的P称为数据库模式。对数据库模式的每一个关系模式给予一个当前值,

就得到一个数据库实例(简称数据库)

泛关系模式存在的存储特别问题有:数据冗余,更新特别,删除特别。

(二)函数依靠

(三)关系模式的分解特性

(四)关系模式的范式

(五)数据库设计

数据库设计是指对于一个给定的应用环境,供应一个确定最优数据模型与处

理模式的规律设计,以及一个确定数据库存储结构与存取方法的物理设计,建立

起既能反映现实世界信息和信息联系,满意用户数据要求和加工要求,又能被某

个数据库管理系统所接受,同时能实现系统目标,并有效存取数据的数据库。

(六)规划

规划阶段的主要任务是进行建立数据库的必要性及可行性分析,确定数据库

系统在组织中和信息系统中的地位,以及各个数据库之间的联系。

(七)需求分析

需求分析阶段应当对系统的整个应用状况作全面的、具体的调查,确定企业

组织的目标,收集支持系统总的设计目标的基础数据和对这些数据的要求,确定

用户的需求,并把这些要求写成用户和数据库设计者都能接受的文档。需求分析

就是把总体信息需求、处理需求以及企业自身的制约条件等几方面的因素进行综

合考虑,最终规划出一份既切合实际,又具有远见的需求说明书。

需求分析大致分为三步来完成,即需求信息的收集、分析整理和评审。需求

信息的收集又称为系统调查,在调查争论之前,要做好充分的预备工作,要明确

调查的目的、调查的内容和调查的形式。需求信息的分析整理包括业务流程分析

和分析结果的描述,业务流程分析一般采纳数据流分析法,分析结果以数据流图

(DFD)表示,除了DFD以外,还要用一些法律规范表格进行补充描述。评审的目

的在于确认某一阶段的任务是否全部完成,以避开重大的疏漏或错误。

(八)概念设计

概念设计的目标是产生反映企业组织信息需求的数据库概念结构,即概念模

式。概念模式是独立于数据库规律结构,独立于支持数据库的DBMS,不依靠于

计算机系统的。概念设计的必要性表现在:

(1)数据库设计过程中各阶段的任务相对单一化,设计简单程度大大降

低,便于组织管理;

(2)不受特定的DBMS的限制,也独立于存储支配和效率方面的考虑,因

而比规律模式更为稳定;

(3)概念模式不含具体的DBMS所附加的技术细节,更简洁为用户所理解,

因而才有可能精确地反映用户的信息要求。

(九)规律设计

规律设计的目的是把概念设计阶段设计好的基本ER图转换为与选用的具体

机器上的DBMS所支持的数据模型相符合的规律结构(包括数据库模式和外模

式)。这些模式在功能上、完整性和全都性约束及数据库的可扩充性等方面均应

满意用户的各种要求。

在规律设计阶段主要输入如下信息:

(1)独立于DBMS的概念模式;

(2)处理需求;

(3)约束条件;

(4)DBMS特性。

在规律设计阶段主要输出如下信息:

(1)DBMS可处理的模式;

(2)子模式;

(3)应用程序设计指南;

(4)物理设计指南。

规律设计的主要步骤有:

(1)初始模式的形成;

(2)子模式设计

(3)应用程序设计梗概;

(4)模式评价;

(5)修正模式。

ER模型中的主要成分是实体类型和联系类型。在ER模型向关系模型转换是

时:

(1)实体类型。将每个实体类型转换成一个关系模式,实体的属性即为

关系模式的属性,实体标识符为关系模式的键。

(2)联系类型。

①若实体间的联系是1:1的,可以在两个实体类型转换成的两个关系模式

中任意一个关系模式的属性中加入另一个关系模式的键和联系类型的属性

②若实体间的联系是1:N的,则在N端实体类型转换成的关系模式中加入

1端实体类型转换成的关系模式的键和联系类型的属性;

③若实体间联系是M:N的,则将联系类型也转换成关系模式,其属性为两

端实体类型的键加上联系类型的属性,而键为两端实体键的组合。

关系数据库的规律设计过程为:

(1)从ER模式导出初始关系模式。

(2)法律规范化处理:确定法律规范级别和实施法律规范化处理。

(3)模式评价:包括功能评价和性能评价。

(4)模式修正:可采纳合并、分解或选用此外结构的方式进行。在经过

模式评阶及修正的反复多次后,最终的数据库模式得以确定,全局规律结构

设计即告结束。在规律设计阶段,还要设计出全部子模式。

(十)物理设计

对一个给定的规律数据模型选取一个最适合应用环境的物理结构的过程,称

为数据库的物理设计。所谓数据库的物理结构,主要指数据库在物理设施上的存

储结构和存取方法。它是完全依靠于给定的计算机系统的。在物理结构中,数据

的基本单位是存储纪录。“文件”是某一类型的全部存储纪录的集合。一般我们

用“文件”表示单纪录类型的物理数据库。

物理设计可分五步来完成:

(1)存储纪录结构设计:包括纪录的组成、数据项的类型和长度,以及

规律纪录到存储纪录的映射;

(2)确定数据存储支配;

(3)访问方法的设计;

(4)完整性和完全性;

(5)程序设计。

前三步涉及到物理数据库结构的设计,后两步涉及到约束和具体的程序设

计。物理设计阶段的输出是物理数据库结构说明书,包括存储纪录格式、存储纪

录位置及访问方法。它能满意全部的操作需求并给出对硬件、软件系统的约束。

在设计过程中效率问题只能在各种约束得到满意且获得可行方案之后进行。

(十一)实现与维护

在数据的实现与维护阶段,设计人员运用DBMS供应的数据定义语立,将规

律设计和物理设计的结果严格地描述出来,成为DBMS可接受的源代码,经过调

试产生目标模式,然后组织数据入库。实现阶段的主要工作有:

(1)建立实际数据库结构;

(2)试运行;

(3)装人数据。

在数据库正式投入使用之前,还有一些工作要做。如数据库的重新组织设计,

故障恢复方案设设计、平安性考虑和事务掌握等。

运行维护阶段的主要工作是:

(1)维护数据库的平安性与完整性掌握及系统的转储和恢复;

(2)性能的监督、分析与改进;

(3)增加新功能;

(4)发觉错误,修改错误

第五讲数据库管理系统

(一)数据库管理系统概述

1.DBMS的系统目标

数据库管理系统是数据库系统的核心。从用户来看,一个DBMS应尽可能具

有如下的系统目标。

(1)用户界面友好

(2)结构清楚

(3)开放性

2.DBMS的基本功能

(1)数据库定义功能

(2)数据存取功能

(3)数据库运行管理

(4)数据组织、存储和管理功能

(5)数据库的建立和维护功能

(6)其他功能

(-)数据库管理系统的结构和运行过程

1.DBMS程序模块的组成

(1)数据定义方面的程序模块

(2)数据操纵方面的程序模块

(3)数据库运行管理方面的程序模块

(4)数据库组织、存储和管理方面的程序模块

(5)数据库建立、维护和其他方面的程序模块

2.DBMS的层次结构

最上层是应用层,位于DBMS核心之外。它处理的对象是各种各样的数据库

应用,如用开发工具开发的或用宿主语言编写的应用程序,终端用户通过应用接

口发出事务恳求或各种查询要求。该层是DBMS与终端用户和应用程序的界面层。

其次层是语言翻译处理层。它处理的对象是数据库语言,如SQL。向上供应

的数据接

是关系、视图,即元组的集合。其功能是对数据库语言的各类语句进行语法

分析、视图转换、授权检查、完整性检查、查询优化等。通过对下层基本模块的

调用,生成可执行代码。这些代码的运行即可完成数据库语句的功能要求。

第三层是数据库取层。该层处理的对象是单个元组,它把上层的集合操作转

化为单纪录操作。执行扫描(如表扫描)、排序、元组的查找、插入、修改、删除、

封锁等基本操作。完成数据录的存取、存取路径维护、并发掌握、事务管理等工

作。

第四层是数据存储层。该层处理的对象是数据页和系统缓冲区。执行文件的

规律打开、关闭、读页、写页、缓冲区读和写、页面淘汰等操作,完成缓冲区管

理、内外存交换、外存的数据管理等功能。

(三)新的应用要求对DBMS的挑战

(1)RDBMS的进展过程

RDBMS产品经受了从集中到分布,从单机环境到网络,从支持信息管理到联

机事务处理(OLTP),再到联机分析处理(OLAP)的进展过程;对关系模型的支持也

逐步完善,系统的功能不断增加。

(2)新的应用需求对DBMS的挑战

随着数据库技术的进展,数据库应用领域越来越广泛,各应用领域对数据库

的需求也不断增加。计算机应用由以前的单项业务处理朝着简单综合业务系统进

展。在这综合系统中,不仅包括大量的联机事务处理(OLTP),同时还有大量的批

处理和决策支持及联机分析处理(OLAP)等需求。因此,需要各种新技术来解决现

实应用的需求。

(四)0racle数据库系统

1.Oracle数据库系统简介

Oracle数据库系统是美国Oracle公司的产品。该公司1979年推出了世界

第一个商业化的关系型数据管理系统。

最近推出的0racle9i是业界第一个完整的、简洁的用于互联网的新一代智

能化的、协作各种应用的软件基础架构。Oracle%实际上是指0racle9i数据库、

0racle9iApplicationServer和0racle9iDeveloperSuite的完整集成。

2.Oracle的主要产品及其功能

Oracle产品主要包括数据库服务器、开发工具和连接产品3类。

(DOracle数据库服务器功能及其特色

Oracle数据库服务器包括标准服务器和很多可选的服务器选件,选件用于

扩展标准服务器的功能,以适应特别的应用需求。

①标准服务器主要具有下列特色:

多进程多线索的体系结构。

高性能核心技术。

高可用性。

SQL的实现o

②并行服务器选件(paralleserveroption)和并行查询选件

(parallequeryoption)

③分布式选件(distributedoption)

④过程化选件(proceduraloption)

(2)Oracle的工具产品及其功能

为便采用户开发数据库应用程序,Oracle供应了众多工具供用户选择使用。

主要有:

①Developer/2000

②Dsigner/2000

③支持联机分析处理(OLAP)

④并行处理力量

③Discoverer/'2000

@0racleOffice

⑤SQLDBA

©Oracle预编译器

⑦Oracle调用接口

(3)Oracle的连接产品及其功能

①SQL*Net是一个负责客户机与服务器之间网络通信的产品,它使得客户计

算机上的Oracle应用开发工具能够访问远程的Oracle数据库服务器中的数据。

它允许客户机和服务器是异构计算机与操作系统,并支持TCP/IP等多种网络通

信合同。'

②Oracle多合同转换器Oracle7支持全部主要的网络合同;允许异种网络

的多合同交换;

供应合同透亮性;拥有启动的可选网络路由选择等。

③Oracle开放式网关(opengateway)Oracle开放式网关技术能把多种数据

源集成为一个整体,使得应用程序不做任何修改就可以运行在非Oracle数据源

上(即访问非Oracle数据库中的数据)。开放式网关包括透亮网关和

过程化网关。采用透亮网关,Oracle应用程序可以直接访问IBMDB2

和SQL/DS,DECRMS和RDB、tandamnonstopSQL,HPTurboimage等数据源。假如

需要访问其他数据源,则必需通过过程化网关,即用户用PL/SQL编程构造网关。

3.Oracle的数据仓库和Intemet解决方案

(1)Oracle的数据仓库解决方案

Oracle的数据仓库解决方案是OracleOLAP产品,主要包括服务器端的

OracleExpress

Server选件与客户端的OracleExpressObjects和OracleExpressAnalyzer

工具。

(2)Oracle的Intemet解决方案

鉴于数据库是存储与管理信息的最有效的方式,将数据库技术与Web技术结

合应用于Internet会很有前途。Oracle针对Intemet/Intranet的产品是

OracleWebservero由OracleWebListener,OracleWebAgent和0racle7服务器

三部分组成。•

(五)IBMDB2数据库系统

1.IBMDB2数据库系统简介

IBMDB2数据系统是美国IBM公司的产品。

Starburst的目的是要针对IBM争论人员对SQL关系型数据库各种局限的了

解,建立新一代的、具延长性的关系型数据库原型。延长性指的是在数据库各子

系统实现开放性,使用户能够很简洁地把新功能加注到一个SQL关系型数据库

里,以便支持新一代的应用。Starburst为新一代商用对象关系型数据库(Object

一relationalDatabase)供应了珍贵的阅历与技术来源。

2.DB2通用数据库的功能和特色

DB2家族除了包含在各种平台上运行的数据库管理系统内核之外,产品包中

还包括了数据复制、数据库系统管理、环球网(Internet)网关支持、在线分析处

理、多媒体支持和各种并行处理力量,并为全部平台上的异构数据库访问供应''中

间件"(middleware)解决方案。

DB2通用数据库(UDB)V7.1的特色有:

①支持Intemet应用

②支持面对对象和多媒体应用

③支持联机分析处理(OLAP)

④并行处理力量

3.IBM的商务智能解决方案

商务智能解决方案的基本结构往往包括以下3个部分:数据仓库,用于抽取、

整合、分布、存储有用的信息;多维分析模型,全方位了解现状;前台分析工具,

供应简洁易用的图形化界面给管理人员。

4.IBM内容管理(ContentManagement)解决方案

(1)IBMContentManagerOnDemand

IBMOnDemand解决方案可以完成电子存储、回取、分发、打印和传真,在极

短的时间内就可以在显示器上获得与原来供应应客户的一模一样的报表/帐单以

及其他计算机输出信息。

(2)DigitalLibrary(数字图书馆)

IBM数字图书馆技术使人们快速而廉价地管理、访问、爱护以及传递大量多

种多样的资料成为可能。

(六)SYBASE数据库系统

1.SYBASE数据库系统简介

SYBASE是美国SYBASE公司的产品。1999年8月,SYBASE正式发布了针对

企业门户(EP)市场的公司策略,进一步加强了公司在企业数据管理和应用开发、

移动和嵌入式计算机、Intemet计算环境及数据仓库等领域的领先地位。

2.SYBASE数据库系统的功能及其特色

目前,SYBASE数据库系统定位在4个方向:分别在企业解决方案、Intemet

应用、商务智能和移动与嵌入计算领域为客户供应先进的技术。

企业解决方案包括企业级数据库,数据复制和数据访问。主要产品有:

SYBASEEP,AdaptiveServerEnterprise,AdaptiveServerReplication,

AdaptiveServerConnect及异构数据库互联选件。

(1)SYBASE企业门户

(2)企业级数据库服务器

(3)0penClient/~enServer

(4)ReplicationServer

(5)PowerDesigner

(6)OmniCONNECT

(7)DirectConnect.

3.SYBASE的Intemet应用和商务智能解决方案

SYBASE的Intemet应用方向的产品关心企业通过Intemet作为业务计算的

平台来猎取竞争优势。主要产品有数据库服务器、中间层应用服务器、以及强大

的快速应用开发工具PowerBuilder。开发者依据其行业特点采用相应部件建立

打包的基于Web的应用。

(l)EnterpriseApplicationServer

(2)快速应用开发工具

(3)SYBASE的商务智能解决方案

4.SYBASE的移动与嵌入计算解决方案。一

移动与嵌入计算产品系列将原始数据转换成企业信息并发布到企业的任何

地方。移动数

据库产品AdaptiveServerAnywhere和最新的UltraLite数据库配置选项以

其高性能、可扩展的技术加强了SYBASE在这一市场的优势。

主要产品包括SYBASESQLAnywhereStudio和iAnywhereWirelessServero

(-t)MS-SQLSERVER数据库系统

1.MS-SQLSERVER数据库系统简介

MS-SQLSERVER数据库系统是美国Microsoft(微软)公司的产品。目前,

MicrosoftServer7.0和MicrosoftSQLServer2000已经广泛使用于我们国家的

各行各业,包括很多政府部门。

2.MS-SQLSERVER数据库系统主要功能及其特性

(1)数据库服务器MS-SQLSERVER

MS-SOLSERVER数据库系统的核心是MicrosoftSOLServer,简称为

MS-SQLServer或SQLServer□

(2)MSSQLServer2000的主要功能及其特色

①充分的Web支持

②高度可伸缩性和牢靠性

③最快投放市场.

④充分的数据仓库功能

⑤广泛支持电子商务功能

3.SQLServer2000多版本支持

为满意不同单位和个人对性能、运行时间和价格的特别要求,SQLServer2000

供应各种不同的版本,包括:

①SQLServer2000企业版

②SQLServer2000标准版

③SQLServer2000个人版

@SQLServer2000开发人员版

⑤SQLServer2000企业评估版

(§)SQLServer2000桌面引擎(MSDE)

⑦SQLServer2000WindowsCE版

4.MicrosoftSQLServer2000的软、硬件环境

(1)使用MicrosoftSQLServer2000企业版,需要的配置

①PC机具有Intel或兼容的Pentium,166MHz或更高配置的处理器。

②带有ServicePack5或更高版本的MicrosoftWindowsNTServer4.0、带有

ServicePack5

或更高版本的WindowsNTServer4.0企业版、Windows2000Server、

Windows2000AdancedServer或Windows2000DatacenterServer操作系统。

③最低64MBRAM(推举使用128MB或更大容量的内存)。

④硬盘空间要求:

对于数据库服务器,要求95MB〜270MB的磁盘空间,典型安装需要大约

250MB的空间;

对于AnalysisServices,要求50MB的磁盘空间;典型安装需要130MB的磁

盘空间;

对于MicrosoftEnglishQuery,要求80MB的磁盘空间。

⑤MicrosoftIntemetExplorer5.0或更高版本

©CD-ROM驱动器

⑦VGA或更高辨别率的监视器

⑧Microsoft鼠标或兼容设施

(2)使用MicrosoftSQLServer2000个人版需要的配置

(除以下各项外,其他要求均与企业版相同)

①需支持MicrosoftWindows98,WindowsMillenniumEdition^Windows2000

专业版、带有ServicePack5或更高版本的WindowsNTWorkstation4.0

②最低32MB的RAM(推举使用64MB或更大容量的内存)

(3)使用MicrosoftSQLServer2000DesktopEngine需要的配置

除以下各项外,其他要求均与企业版相同。

①需支持MicrosoftWindows98、WindowsME>带有ServicePack5或更高版

本的WindowsNTWorkstation4.0或Windows2000专业版

②最少32MB的RAM

③44MB的可用硬盘空间

(4)网络支持

Windows95、Windows98>WindowsME、WindwosNT4.0或Windows2000内置

网络软件(除非使用BanyanVINES或AppleTalkADSP,否则不需其他网络软件;

由Windows网络环境中的NWLink合同负责供应NovelINetWarelPX/SPX客户端

支持)。客户端支持:Windows95>Windows98>WindowsME、

WindowsNTWorkstation4.0^Windows2000专业版、UNIX、AppleMacintosh和OS/2

第六讲事务管理与数据库平安性

(一)数据库的恢复

为了保证数据库的完整性,事务必需具有原子性、全都性、隔离性、长久性

四共性质,即事务的ACID性质。

数据库系统中常见的故障很多,造成数据库中数据损坏的故障通常有:事务

故障、系统故障、介质故障。作为DBMS,应能把数据库从被破坏、不正确的状

态恢复到最近一个正确状态。DBMS的这种力量称为可恢复性。数据库恢复的实

现方法:

(1)定期对整个数据库进行复制或转储。转储可分为静态转储和动态转

储;转储还可以分为海量存储和增量转储

(2)建立“日志”文件

(3)恢复

(二)数据库的并发掌握

在多用户共享系统中,假如多个用户同时对同一数据进行操作称为并发操

作。并发操作时,事务相互之间可能有干扰,破坏了事务的隔离性。DBMS的并

发掌握子系统负责协调并发事务的执行,保证数据的全都性不受破坏,同时避开

用户得到不正确的数据。数据库的并发操作通常会带来以下三类问题:

(1)丢失更新问题;

(2)不全都分析问题;

(3)“脏数据”的读出。

所谓并发掌握就是要用正确的方法调度并发操作。

(三)数据库的完整性

数据库的完整性是指数据的正确性和相容性。完整性检查,即系统用肯定的

机制采检查数据库中的数据是否满意规定的条件。这种条件在.数据库中称为完

整性约束条件。对数据库的非法更新有:

(1)数据本身是错误的,输入时,就按错误的数据输入;

(2)数据原来是正确的,由于操作或程序的错误,造成插入时变成错

误的数据;

(3)由于系统故障,使数据发生错误;

(4)若干事务的并发执行产生不正确的数据;

(5)人为地有意破坏。数据库的完整性是通过DBMS的完整性子系统

实现的。

完整性子系统的主要功能有:

(1)监督事务的执行,并测试是否违反完整性规章;

(2)如有违反现象,则实行恰当的操作,诸如拒绝、报告违反状况、

改正错误等方法来处理。

(四)数据库的平安性

数据库的平安性是指爱护数据库,防止不合法的使用,以免数据的泄漏、非

法更改和破坏。对数据库不合法的使用称为数据库的滥用。数据库的滥用可分为

无意和恶意的两类。恶意的滥用主要是指未经授权的读取数据(即偷窃信息)和未

经授权的修改数据(即破坏数据)o数据库的完整性是指尽可能避开对数据库的无

意的滥用;数据库的平安性是指尽可能避开对数据库的恶意的滥用。为了爱护数

据库,防止恶意的滥用,可以从环境级、职员级、OS级、网络级、数据库系统

级等方面设置各种平安措施。

第七讲新一代数据库应用开发工具

(-)新一代数据库应用开发工具概念

1.使用应用开发工具的意义

詹姆斯•马丁(JamesMartin)指出:'企业间的技术竞争,实质上是计算机应

用系统的竞争。哪个公司能以最快的速度建立所需的计算机应用系统,哪个公司

就能在竞争中取胜。假如一个公司要花几年的时间去建立和调试一个简单的应用

系统,而它的竞争对手只需几个月,那么,这个公司将没有生意”。可见,快速

建立计算机应用系统对一个企业来说是多么重要。

2.新一代数据库应用开发工具的特征和进展趋势

(1)新一代数据库应用开发工具的特征

新一代客户机/服务器前端快速开发工具应具备以下基本特征:

①支持与多种数据库联接,可进行对异种数据库源的透亮访问

②支持独立于特定DBMS的应用开发,供应统一的访问DBMS的用户界面和

应用程序接口。

③支持可视化图形用户界面(VGU”o

④支持面对对象的程序设计(OOP)o

⑤供应完善的数据对象(dataobiect)o

⑥支持开放性。

⑦工具的完备和集成一体化。

⑧支持汉化。

(2)当前应用开发工具的进展趋势

当前应用开发工具的进展趋势是:

①采纳三层Client/Server结构

②对Web应用的支持

③开放的、构件式的分布式计算环境

(二)应用开发工具的选择

1.当前应用开发对工具的总需求

(1)提高开发和运行效率

(2)降低开发和维护费用

(3)应用系统具有先进性•

(4)代码的可重用性

2.目前应用开发工具存在的问题

目前某些应用开发工具所存在的问题大致可归纳如下:

(1)开发过程过于简单,涉及过多低层技术实现

(2)难于适应要求稳定的大规模的企业级业务处理

(3)难于快速适应低层技术的更新和业务规律的变化

(三)CASE工具----PowerDsigner

1.PowerDesigner简介

PowerDesigner是一个功能强大而使用简洁的工具集,支持从处理流程建模

到对象和组件的生成的应用开发生命周期的各个阶段。并供应了一个完整的建模

解决方案。业务或系统分析人员、设计人员、数据库管理员DBA和开发人员可以

对其裁剪以满意各自的特定需要。

2.PowerDesigner的组成及各模块的功能

@PowerDesignerProcessAnalyst

②PowerDe~ignerDataArchitect

③PowerDesignerAppMode1er

④PowerDesignerMetaWorks

⑤PowerDesignerWarehouseArchitect,,

⑥PowerDesignerViewer

3.PowerDesigner的安装

安装PowerDesigner的计算机系统应满意如下要求:

①Intel486/66MHz或以上的CPU,使用P5100以上的处理器更好;

②12MB内存,使用16MB以上更好;

③已安装Windows95,WindowsNT4.0或与之100%兼容的其他操作系统;

©CD-ROM;VGA或更高辨别率的显示器;鼠标;

⑤PowerDesigner的各个模块可以单独安装,每个模块需要硬盘空间10MB

至12MB,

4.PowerDesigner的DataArchitect模块

(1)DataArchitect的功能

DataArchitect是一个强有力的数据库模型设计工具,它支持真正的两层设

计方法,在概念层和物理层建立和维护数据模型,并供应两层设计方法的很多优

点。

(2)DataArchitect的信息(处理)流程

(3)DataArchitect的使用方法

(4)建立概念数据模型(CDM)

①定义实体

②定义实体的属性

③定义联系

(5)建立物理数据模型(PDM)

物理数据模型的创建方式有如下几种:

①从CDM生成PDMo

②直接生成PDMo

③从数据库逆向生成PDMo

(6)生成创建数据库的脚本文件(.SQL)

创建数据库的脚本文件是一个.SQL文件,生成的方法有如下两种:

①从现有数据库生成脚本文件

②从PDM生成创建数据库的脚本文件(SQL文件)

(四)可视化程序开发工具一一Delphi

1.Delphi的进展历程

Delphi是美国Borlandinternational公司的产品。Delphi产品已经经受了

5代,第五代新产品Delphi5.0适用于WindowsNT和Windows95/98/2000环

境,且对Delphi400在诸多性能和功能方面都有所改善,还包括了VisualC++5.0

与VisualBasic5.0的功能和优点。

2.Delphi的主要特点

(1)具有良好的面对对象设计力量

(2)具有良好的数据处理力量

(3)具有良好的对标准技术的支持

(4)具有良好的Intemet/Intranet开发支持

(5)具有良好的对第三方构件产品和工具的支持

3.Delphi的安装和卸载

(1)软、硬件环境要求

安装Delphi的计算机系统应满意如下要求:

①Intel486/66MHz或以上的CPU,使用P5100以上的处理器更好;

②12MB内存,使用16MB以上更好;

③已安装Windows95,WindwosNT4.0或与之100%兼容的其他操作系统;

©CD-ROM;VGA或更高辨别率的显示器;鼠标;

⑤完全安装客户机/服务器套件版本需要170MB的硬盘空间(专业版需要

140MB,标准版需要130MB),另加10MB的临时空间。

(2)安装过程

(3)卸载Delphi

4.Delphi的集成开发环境

在Delphi安装胜利之后,启动操作系统,可以通过下述方法之一进入

Delphi:

(1)双击Delphi图标。

(2)从“开头”菜单中选择Delphi。

5.Delphi程序设计的基本步骤

建立一个Delphi程序时,用户一般只需在一个窗体对象上放置所需要的各

种构件,然后对其特性赋值,并编写代码以掌握大事。

(五)应用开发工具----PowerBuilder

1.PowerBui1der概述

(1)PowerBuilder简介

PowerBuilder是由美国闻名的数据库应用开发工具厂商PowerSoft公司(现

已并入SYBASE公司)于1991年6月推出的完全依据客户机/服务器体系结构设

计的快速应用开发统,是一个客户机前端开发工具。

(2)PowerBuilder的主要特点

PowerBuilder的主要特点包括:

①专业的客户机/服务器应用开发工具;

②全面支持面对对象开发;•

③使用特地接口或ODBC,可同时支持与多种数据库的连接。特别适合于多

层客户机/服务器结构的集成化应用系统开发;

④供应丰富的数据表现风格,可定制的称为“数据窗口(DataWindows)”对

象(该项技术

获专利),可简洁地对数据库进行操作并能敏捷地制作报告和商业图形;

⑤支持动态数据交换(DDE)、动态链接库(DLL)、对象链接与嵌入(OLE);

⑥供应敏捷、快捷的数据和结构移动(复制)方式;

⑦供应强大的调试器和多种调试方式;'

⑧支持Internet多层体系结构下的快速Web应用开发。

(3)PowerBuilder的安装

①硬件环境:P5以上微机,32MB以上内存,VGA显示器,80MB以上硬盘空

间o

②软件环境:Windows98>WindowsNT.Windows2000等版本。

2.PowerBuilder大事驱动的程序设计

(1)大事驱动程序设计的概念

在过程化程序设计中,由程序掌握着处理的流向。用户不行以违反程序设计

的路径,至多能按程序设计的路径做些选择。在大事驱动程序设计中,用户可以

通过选择在窗口中的对象来掌握处理的流向。

(2)PowerBuilder对象

对象是一种描述,一个对象有类名、特征(属性)和定义该对象行为的方法组

成的自包含应用成分。在PowerBuilder中,对象包括:应用(Apllication)、窗

□(Window)>菜单(Menu)、数窗口(DataWindows)、按钮(Button)以及各种控件

等。多个对象可以组合成新的对象。

(3)大事与脚本

大事(Event)是被用户或应用初始设定的动作,包括系统预定义大事和用户

定义大事。

系统为每类PowerBuilder对象定义了相应的大事,例如,点击(Clicked)、

打开(Open)>关

闭(Close),等等。

在PowerBuilder中,一个脚本是一组命令,这组命令是使用PowerScript

语言和函数

(PowerBuilder函数和用户定义函数)为某个大事编写的。

3.PowerBuilder应用开发环境和开发步骤

(1)PowerBuilder应用开发环境

启动PowerBuilder,显示它的主屏。在被称为PowerBar的工具条中点击一

个画笔的图标,就打开该画笔。每一个PowerBuilder画笔的屏幕都包括一个或

多个称为PainterBar工具条、菜单、工作空间和MicroHelp。

(2)PowerBuilder应用开发步骤

PowerBuilder应用是一组PowerBuilder对象的集合。一般,一个

PowerBuilder应用包括:应用对象、窗口对象、在窗口对象上的菜单对象、数

据窗口对象、用户定义对象和按钮等各种掌握对象,以及与这些对象相关的大事

和大事处理程序(脚本)。

开发PowerBuilder应用主要包括创建对象并定制它们的特性,使用

PowerScript语言、

PowerBuilder或用户定义函数编写脚本,用以定义和处理当某个大事发生

时需要执行的任务或动作。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论