第一章 数据库系统概述.docx

上传人:b****6 文档编号:13706005 上传时间:2023-06-16 格式:DOCX 页数:20 大小:386.01KB
下载 相关 举报
第一章 数据库系统概述.docx_第1页
第1页 / 共20页
第一章 数据库系统概述.docx_第2页
第2页 / 共20页
第一章 数据库系统概述.docx_第3页
第3页 / 共20页
第一章 数据库系统概述.docx_第4页
第4页 / 共20页
第一章 数据库系统概述.docx_第5页
第5页 / 共20页
第一章 数据库系统概述.docx_第6页
第6页 / 共20页
第一章 数据库系统概述.docx_第7页
第7页 / 共20页
第一章 数据库系统概述.docx_第8页
第8页 / 共20页
第一章 数据库系统概述.docx_第9页
第9页 / 共20页
第一章 数据库系统概述.docx_第10页
第10页 / 共20页
第一章 数据库系统概述.docx_第11页
第11页 / 共20页
第一章 数据库系统概述.docx_第12页
第12页 / 共20页
第一章 数据库系统概述.docx_第13页
第13页 / 共20页
第一章 数据库系统概述.docx_第14页
第14页 / 共20页
第一章 数据库系统概述.docx_第15页
第15页 / 共20页
第一章 数据库系统概述.docx_第16页
第16页 / 共20页
第一章 数据库系统概述.docx_第17页
第17页 / 共20页
第一章 数据库系统概述.docx_第18页
第18页 / 共20页
第一章 数据库系统概述.docx_第19页
第19页 / 共20页
第一章 数据库系统概述.docx_第20页
第20页 / 共20页
亲,该文档总共20页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

第一章 数据库系统概述.docx

《第一章 数据库系统概述.docx》由会员分享,可在线阅读,更多相关《第一章 数据库系统概述.docx(20页珍藏版)》请在冰点文库上搜索。

第一章 数据库系统概述.docx

第一章数据库系统概述

第一章数据库系统概述

一般说来,数据库系统由计算机软、硬件资源组成,它可以有组织地动态存储大量关联数据,方便多用户访问。

数据库系统与文件系统的重要区别在于数据的充分共享、交叉访问以及应用程序的高度独立性。

数据库主要解决以下3个问题:

(1)有效地组织数据。

主要是对数据进行合理设计,以便计算机高效存储。

(2)将数据方便地输入计算机中。

(3)根据用户的要求将数据从计算机中提取出来。

数据库也是以文件方式存储数据的,但它是数据的一种高级处理方式。

在应用程序和数据库之间有一个数据库管理软件DBMS(DataBaseManagementSystem),整个为应用程序提供运行的环境为数据库系统,关系如图1.1所示。

1.1基本概念

1.数据、数据库、数据库管理系统和数据库系统

数据(Data)是描述现实世界中各种具体事物或抽象概念的可存储并具有明确意义的信息。

所以数据的概念包括两个方面含义:

1)是描述事物特性的数据内容,也就是我们常说的信息。

2)是存储在某一种媒体上的数据形式,即符号。

数字与数据的区别

数字是表示数量多少的符号,如0、4、123等;而数据是能被记录下的信息,例如从计算机的角度讲,数据就是一切能被计算机处理的对象,如数字、符号、文字、图形、图像和声音等。

数据库(Database,DB)是相互关联的数据集合,是指长期存储在计算机内的,有组织的,可共享的、可以表现为多种形式的数据集合。

数据库中的数据具有如下特点:

(1)按一定的数据模型组织、描述和存储;

(2)具有较小的冗余度;

(3)具有较高的数据独立性和易扩展性;

(4)可为各种用户共享。

数据库管理系统(DatabaseManagementSystem,DBMS)是一个通用的软件系统,由一组计算机程序构成。

它能对数据库进行有效的管理,包括存储管理、安全性管理、完整性管理等;同时,它也为用户提供了一个软件环境,使其能够方便快速地创建、维护、检索、存取和处理数据库中的信息。

数据库管理系统的主要任务:

科学地有效地组织和存储数据、高效地获取和管理数据,接受和完成用户提出的访问数据的各种请求。

数据库管理系统的主要功能:

(1)数据定义功能

(2)数据操纵功能

(3)数据库运行控制功能

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

数据库系统(DatabaseSystem,DBS)

数据库系统(DataBaseSystem,DBS)是一个环境,用户的应用系统得以在这个环境中顺利运行。

一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。

表示为“DB+DBMS+DBA+ApplicationProgram+User”。

数据库操作(DatabaseOperation)在数据库应用中,最常见的数据库操作有:

增加、删除、修改和查询。

1.2数据库技术的发展

数据库管理技术大致经历了人工管理阶段、文件系统阶段和数据库系统阶段。

1.人工管理阶段

20世纪50年代以前,计算机主要用于数值计算。

这一时期的数据,数据量小,无结构,由用户直接管理,且数据间缺乏逻辑组织,由于是面向应用程序的,数据缺乏独立性,应用程序与其处理的数据结合成一个整体。

程序与数据的关系如下图所示:

图1.1人工管理阶段程序与数据的关系

1).硬件:

外存只有纸带、卡片、磁带,并没有磁盘等直接取的存储设备。

2).软件:

实际上,当时还未形成软件的整体概念,这一时期,没有操作系统,没有管理数据的软件。

3).特点:

(1)数据不保存。

(2)应用程序管理数据。

应用程序承担设计数据的逻辑结构和物理结构任务。

(3)数据不能共享。

一组数据只能对应一个程序。

(4)数据不具有独立性。

数据的逻辑或物理结构改变,应用程序随之改变。

2.文件系统阶段

在20世纪50年代后期到60年代中期,文件系统阶段程序与数据的关系如图所示。

图1.2文件系统阶段程序与数据的关系

1)硬件:

磁盘、磁鼓等直接存取存储设备。

2)软件:

操作系统中有了专门的数据管理软件--文件系统。

3)特点:

(1)数据可以长期保存。

(2)由文件系统进行数据管理。

数据按文件名访问,按记录进行存取,可以对文件进行修改、插入和删除操作。

(3)数据共享性差,冗余度大。

a)一个文件对应一个应用程序。

b)不同的应用程序具有部分相同的数据时,也必须建立各自的文件而不能共享相同的数据。

(4)数据独立性差。

4)在数据文件中常涉及下列术语:

1)数据项:

描述事物性质的最小单位。

2)记录:

若干数据项的集合,一个记录表达一个具体事物。

3)文件:

若干记录的集合

3数据库系统阶段

20世纪60年代后期至今,数据库系统阶段程序与数据的关系如下图所示:

图1.3数据库管理阶段程序与数据的关系

1.文件系统的缺陷

1)大容量数据存储,大数据量如500GB

(1)内存不够。

(2)32位计算机直接访问的地址为4GB。

(3)大数据量下的查询速度。

2)多用户并发访问

3)数据一致性

4)安全性

2.数据库系统特点

1)数据结构化。

数据库系统与文件系统是有根本区别的。

对于文件系统来讲,相互独立的文件的记录内部是有结构的,而数据库系统主要实现整体数据的结构化。

2)数据的共享性高,冗余度低,易扩充。

a)数据可以被多个用户、多个应用共享使用。

b)数据共享可以大大减少数据冗余、节约存储空间。

c)数据共享还能够避免数据之间的不相容性与不一致性,所谓的不一致性是指同一数据的不同拷贝值不一样。

3)数据独立性高。

数据独立性主要从物理独立性和逻辑独立性两个方面体现。

从物理独立性角度讲,用户的应用程序与存储在磁盘上的数据库是相互独立的。

从逻辑独立性角度讲用户的应用程序与数据库的逻辑结构是相互独立的,即数据的逻辑结构改变了,用户程序也可以不变。

4)数据由DBMS统一管理和控制。

DBMS提供以下几个方面的数据控制功能:

(1)数据库的安全性(security)保护。

保护数据以防止不合法的使用造成的数据的泄密和破坏。

(2)数据的完整性检查(integrity)。

数据的完整性指数据的正确性和一致性。

完整性检查是指将数据控制在有效的范围内,或保证数据之间满足一定的关系。

(3)并发(concurrency)控制。

当多个用户的并发进程同时存取、修改数据库时,可能会发生相互干扰而得到错误的结果或使得数据库的完整性遭到破坏,因此必须对多用户的并发操作加以控制和协调。

(4)数据库恢复(recovery)。

当计算机系统遭遇硬件故障、软件故障、操作员误操作或恶意破坏时,可能导致数据错误或全部、部分丢失,此时要求数据库具有恢复功能。

所谓的数据库恢复是指DBMS将数据库从错误状态恢复到某一已知的正确状态,即完整性状态。

1.3数据模型

使用数据库技术的目的是把现实世界中存在的事物以及事物之间的联系在数据库中用数据加以描述、存储,并对其进行各种处理,为人们提供能够完成现实活动的有用信息。

怎样把现实世界中的事物及其事物之间的联系在数据库中用数据来加以描述,是数据库技术中一个基本问题。

数据模型(DataModel)即是对数据进行抽象化表示的工具,主要使用逻辑概念(如对象、对象属性、对象联系等)来表示数据。

通俗来讲,数据模型就是对现实世界的模拟、描述或表示。

数据模型应满足的三个要求:

●比较真实地描述现实世界;

●易为用户所理解;

●易于在计算机上实现。

1.数据模型的三要素

1)数据结构

用于描述系统的静态特性。

数据结构不仅要描述数据本身,还要描述数据之间的联系。

2)数据操作

用于描述系统的动态特性。

包括操作及有关的操作规则。

数据库的主要操作有:

插入、删除、修改和查询。

3)数据的约束条件

是一组完整性规则的集合。

完整性规则是数据模型中数据及其联系所具有的约束规则,用来限定数据库状态以及状态的变化,以保证数据的正确。

2.为何要使用多种数据模型

1)现实管理系统的用户与计算机管理系统的设计人员之间的专业差异。

2)用户理解与计算机实现的矛盾。

3.数据模型

1).层次模型

层次模型(HierarchicalModel)表示数据间的从属关系结构,是一种以记录某一事物的类型为根节点的有向树结构。

层次模型像一棵倒置的树,根节点在上,层次最高;子节点在下,逐层排列。

数据库系统中最早出现的数据模型。

IBM开发出IMS(InformationManagementSystem)DBMS,是层次数据模型的基础。

   

图1.4层次数据模型

其重要特征如下:

(1)仅有一个无双亲的根节点。

(2)根节点以外的子节点,向上仅有一个父节点,向下有若干子节点。

2)网状数据模

网状数据模型(NetDataModel)是层次模型的扩展,它表示多个从属关系的层次结构,呈现一种交叉关系的网络结构。

网状模型是以记录为节点的网络结构。

用层次模型表示非树型结构很不直接,网状模型则可克服这一弊病。

图1.5网状数据模型

其主要特征如下:

(1)有一个以上的节点无双亲。

(2)至少有一个节点有多个双亲。

3).关系模型

关系模型(RelationalModel)中的“关系”是有特定含义的,广义地说,任何模型都可以描述一定事物数据之间的关系。

层次模型描述数据之间的从属关系;网状模型描述数据之间的多种从属的网状关系。

关系模型中的“关系”虽然也适用于这种广义的理解,但同时又特指那种具有相关性而非从属性的平行数据之间的按照某种序列排列的集合关系,如图1.6所示。

学号

姓名

性别

10021

李大庆

10022

王三少

10023

孙 莉

             

 图1.6关系数据模型

4.关系数据模型

关系数据模型是由IBM公司的E.F.Codd于1970年首次提出,以关系数据模型为基础的数据库管理系统,称为关系数据库系统(RDBMS),目前广泛使用。

1)关系数据模型的定义

实体:

客观世界中有别于其他对象的对象。

可以是抽象的也可以是具体的,如某某刘课程,某份合同是抽象的,某某学生,某某老师就是具体的。

联系:

两个或多个实体之间的关联。

如“选课”是学生实体和课程实体之间的联系,“门市零售”是客户实体、售货员实体、商品实体之间的联系。

实体和联系均用二维表来表示的数据模型称之为关系数据模型。

一张二维表,由行和列组成,如图1.7所示。

TB0601

TB0602

TB0603

TB0604

00

基础部

JCB

张明忠

10

机械系

JXX

孙明华

20

电气系

DQX

郭明权

30

计算机系

JSJX

刘明强

40

管理系

GLX

蒋明华

50

机电系

JDX

倪明寿

图1.7关系数据模型

2)关系数据模型的基本概念

(1)关系(Relation)

对应于关系模式的一个具体的表称为关系,又称表(Table)。

(2)关系模式(RelationScheme)

二维表的表头那一行称为关系模式,又称表的框架或记录类型,是对关系的描述。

关系模式可表示为:

关系模式名(属性名1,属性名1,...,属性名n)的形式。

例如:

学生(学号,姓名,性别,出生日期,籍贯)。

(3)元组(Tuple)

关系中的每一行称为关系的一个元组,又称行(Row)或记录(Record)。

(4)属性(Attributes)

关系中的每一列称为关系的一个属性,又称列(Column)。

给每一个属性起一个名称即属性名。

(5)变域(Domain)

关系中的每一属性所对应的取值范围叫属性的变域,简称域。

(6)侯选键(CandidateKey)

能唯一识别关系实例元组的最小字段集。

一个关系可由以有多个候选键。

(7)主键(PrimaryKey)

一个唯一识别关系实例元组的最小字段集合。

可从关系的候选键中选出,一个关系只能有一个主键。

(8)外键(ForeignKey)

一张表中的某个属性(组)是另一张表中有候选键或主键,则称该属性(组)为此张表的外键。

学生表班级表

学号

姓名

班号

班号

班名

人数

主键外键主键

图1.8主键、外键示意图

3)关系数据模型优缺点

(1)优点

①由于实体和联系都用关系描述,保证了数据操作语言的一致性;

②结构简单直观、用户易理解;

③有严格的设计理论;

④存取路径对用户透明,从而具有更高的独立性、更好的安全保密性,也简化了程序员的工作和数据库开发建立的工作量。

(2)主要缺点

由于存取路径对用户透明,造成查询速度慢,效率低于非关系型数据模型。

1.4数据库中的术语简介

1.字段

使用过Office中的Excel(电子表格软件)的用户,可能会发现图1.9中的表很像Excel中的工作表。

Access数据库的表与Excel工作表相同点是:

都是按行和列组织的,用网格线隔开各单元格,单元格中可添加数据;Access数据表与Excel工作表不同点是:

在Access数据库表中,表中的每一列代表一个字段,即一个信息的类别,表中的每一行就是一个记录,它存放表中一个项目的所有的信息。

图1.9罗斯文“客户”表视图

2.索引

索引是包含表中的一个字段或者一组字段中的某个关键词的按一定顺序排列的数据列表。

数据库利用索引能迅速地定位到要查找的记录,从而缩短了查找记录的时间。

如图1.9所示的“客户”表中,就以“客户ID”字段建立了一个索引,如果要查找所有以D开头的公司名称,就没有必要在Access库中逐个寻找每个公司名称,而只需直接找到公司名称索引序列表中的以D开头的客户即可。

图1.9所示表中显示的数据并不多,但是在实际应用中一个数据表可能存储数以万计的客户记录,如果没有索引,搜索一个数据需要很长时间,索引是快速完成搜索大量数据任务的关键所在。

但是过多的索引也会降低Access的性能,所以只需要在经常访问的字段上建立索引。

3.记录

数据工作表被分为行和列,行称为记录(Record),列称为字段(Field)。

每条记录都被看作为一个单独的实体,可以根据需要进行存取或者排列。

表中的同一列数据具有相似的信息,例如产品ID、产品名称、供应商和类别。

这些数据的列条目就是字段。

每个字段通过明确的数据类型来识别,常见的数据类型有文本型、数字型、货币型或者日期型,字段具有特定的长度,每个字段在顶行有一个表明其具体信息类别的名字。

行(表示记录)和列(表示字段)的相交处就是值——存储的数据元素。

例如,图1.9中“联系人头衔”字段中的“采购员”代表了“客户ID”为“BERGS”的类别。

在同一个表中,值可能会重复出现,而字段和记录却是惟一的,字段可以用字段名来识别,记录通常通过记录的某些惟一特征符号来识别。

1.5主流DBMS

1. ORACLE公司及ORACLE

1977年6月,LarryEllison与BobMiner和EdOates在硅谷共同创办了一家名为软件开发实验室(SoftwareDevelopmentLaboratories,SDL)的计算机公司(ORACLE公司的前身)。

那个时候,32岁的LarryEllison,这个读了三家大学都没能毕业的辍学生,还只是一个普通的软件工程师。

公司创立之初,Miner是总裁,Oates为副总裁,而Ellison,因为一个合同的事情,还在另一家公司上班,第一位员工BruceScott。

Ellison和Miner预见到数据库软件的巨大潜力,于是,SDL开始策划构建可商用的关系型数据库管理系统(RDBMS)。

图1.5左起EdOates、BruceScott、BobMiner、LarryEllison

很快他们就弄出来一个产品,他们把这个产品命名为ORACLE。

因为他们相信,ORACLE(字典里的解释有“神谕,预言”之意)是一切智慧的源泉。

1979年,SDL更名为关系软件有限公司(RelationalSoftware,Inc.,RSI),毕竟“软件开发实验室”不太像一个大公司的名字。

1983年,为了突出公司的核心产品,RSI再次更名为ORACLE。

RSI在1979年的夏季发布了可用于DEC公司的PDP-11计算机上的商用ORACLE产品。

1984年10月,ORACLE发布了第4版产品。

1998年9月,ORACLE公司正式发布ORACLE8i。

“i”代表Internet。

2001年6月的ORACLEOpenWorld大会中,ORACLE发布了ORACLE9i。

2003年9月8日,旧金山举办的ORACLEWorld大会上,Ellison宣布下一代数据库产品为“ORACLE10g”。

ORACLE应用服务器10g(ORACLEApplicationServer10g)也将作为甲骨文公司下一代应用基础架构软件集成套件。

“g”代表“grid,网格。

图1.6美国Oracle公司总部一瞥

2. IBM公司及DB2

IBM是全球IT第一巨头,这家1914年创立的公司,目前拥有全球雇员30万多人,业务遍及160多个国家和地区。

2000年,IBM公司的全球营业收入达到八百八十多亿美元。

图1.7IBM创始人沃森父子

1968:

IBM在IBM360计算机上研制成功了IMSV1,这是第一个也是最著名的和最为典型的层次型数据库管理系统。

至今仍然还有企业在使用。

1970:

这是数据库历史上划时代的一年,IBM公司的研究员E.F.Codd发表了业界第一篇关于关系数据库理论的论文"ARelationalModelofDataforLargeSharedDataBanks",首次提出了关系模型的概念。

这篇论文是计算机科学史上最重要的论文之一,奠定了Codd博士"关系数据库之父"的地位。

1973:

IBM研究中心启动了SystemR项目,研究多用户与大量数据下关系型数据库的可行性,它为DB2的诞生打下了良好基础。

由此取得了一大批对数据库技术发展具有关键性作用的成果,该项目于1988年被授予ACM软件系统奖。

1974:

IBM研究员DonChamberlin和RayBoyce通过SystemR项目的实践,发表了论文"SEQUEL:

AStructuredEnglishQueryLanguage",提出了SEQUEL语言,此即SQL语言的原型。

1975:

IBM研究员DonChamberlin和MortonAstrahan的论文"ImplentationofaStructuredEnglishQueryLanguage",在SEQUEL的基础上描述了SQL语言的第一个实现方案。

这也是SystemR项目得出的重大成果之一。

1981:

由于发明了关系型数据库模型,IBM的研究员E.F.Codd接受了ACM图灵奖,这是计算机科学界的最高荣誉。

Codd博士也是继查尔斯.巴赫曼(CharlesW.Bachman)之后,又一位由于在数据库领域做出巨大贡献而获此殊荣的计算机科学家。

1982:

IBMPC的出现标志着PC产业开始孕育发展。

在以后相当长的一段时间内,在各种品牌的个人电脑上标记着的"IBMPCCompatible"字样都见证着IBM在这个领域的辉煌。

1982:

IBM发布了SQL/DSforVSEandVM。

这是业界第一个以SQL作为接口的商用数据库管理系统。

该系统也是基于SystemR原型所设计的。

1987:

IBM发布带有关系型数据库能力的OS/2V1.0扩展版,这是IBM第一次把关系型数据库处理能力扩展到微机系统。

这也是DB2forOS/2、UnixandWindow的雏形。

1992:

第一届IDUG欧洲大会在瑞士日内瓦召开。

这标志着DB2应用的全球化。

1995:

IBM发布了DB2WWWConnectionV1forOS/2andAIX(该产品后来被更名为Net.Data)。

该产品可以将数据库中的数据快速发布到Web。

1996:

IBM发布DB2V2.1.2,这是第一个真正支持JAVA和JDBC的数据库产品。

1997:

IBM发布了可以支持Web的DB2forOS/390V5,这是当时唯一能够支持64,000个并发用户和百TB级别的数据库产品。

IBM基于RS/6000SP架构的超级计算机"深蓝"在国际象棋的6番棋对抗中战胜了世界棋王卡斯帕罗夫。

2000.IBM发布了DB2XMLExtender,成为在业界第一个为数据库提供内置XML支持的厂商。

2001:

IBM以10亿美金收购了Informix的数据库业务,这次收购扩大了IBM的分布式数据库业务。

2004:

IBMDB2在最近TPC的两项测试中屡次刷新该测试的新纪录,在计算领域的历史上树立了新的里程碑。

其中在TPC-C的测试中,它创造了计算速度领域新的世界记录,彻底粉碎了在该测试中每分钟三百万次交易的极限。

2005:

经过长达5年的开发,IBMDB29将传统的高性能、易用性与自描述、灵活的XML相结合,转变成为交互式、充满活力的数据服务器。

2006:

IBM发布DB29,将数据库领域带入XML时代。

3.Sybase公司及SQLSERVER

Sybase公司是1984年成立的,属于后起之秀。

他推出了支持企业范围的“客户/服务器体系结构”的数据库。

Sybase把“客户/服务器数据库体系结构”作为开发产品的重要目标。

他们吸取了INGRES的研制经验,以满足联机事务处理应用的要求,与1987年推出了SybaseSQLServer。

MSSQLServer是购买Sybase公司1987年推出的SybaseSQLServer,所以他们实质是一样的。

后来两家公司分手后Sybase公司的新产品重命名为AdaptiveServer,而微软公司一直延续SQLSERVER直到最新的SQLSERVER2005。

 

表1.1主流数据库产品对比

评价指标

Oracle

DB2

SQLserver

分布式处理

较强

并行处理

较强

较强

较强

复制技术

较强

较强

C/S支持

支持

支持

支持

B/S支持

支持

支持

支持

硬件平台

微机 PC服务器 小型机

微机 PC服务器 大中小型机

微机 PC服务器 小型机

操作系统

几乎所有

UnixWinnt

几乎所有

网络协议

几乎所有

几乎所有

几乎所有

DBMS核心

庞大

稍大

轻巧

稳定性

可靠性

基于WEB

支持

支持

支持

移动计算

较好

国外应用

多领域 工业

金融 零售

金融业

国内应用

多领域 工业

金融业

商业 零售业

4.Microsoft Access

Access是Office系列

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2