《第1章数据库概论A.ppt》由会员分享,可在线阅读,更多相关《第1章数据库概论A.ppt(87页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1数据库系统教程数据库系统教程(第(第3版)版)上篇上篇 基础篇基础篇第第1章章 数据库概论数据库概论第第2章章 关系运算理论关系运算理论第第3章章 SQL语言语言第第4章章 规范化设计理论规范化设计理论第第5章章 DBD与与ER模型模型第第6章章 DB的存储结构的存储结构第第7章章 系统实现技术系统实现技术2目录目录下篇下篇 发展篇发展篇第第8章章 ODBS第第9章章 DDBS第第10章章 ODBC技术技术第第11章章 XML技术技术第第12章章 现代信息现代信息 集成技术集成技术第第1章章 数据库概论数据库概论3第第1章章 数据库概论数据库概论1.1 引言引言1.2 数据库的由来和发展数据
2、库的由来和发展1.3 数据描述数据描述1.4 数据抽象的级别数据抽象的级别1.5 数据库管理系统(数据库管理系统(DBMS)1.6 数据库系统(数据库系统(DBS)1.7 小结小结4(1)DB、DBMS和和DBS的定义的定义(2)数据管理技术的发展阶段:)数据管理技术的发展阶段:人人工工管管理理、文文件件系系统统、数数据据库库和和高高级级数数据据库库等等各阶段的特点。各阶段的特点。(3)数据描述:)数据描述:概念设计、逻辑设计和物理设计等概念设计、逻辑设计和物理设计等各阶段各阶段中数中数据描述的术语,概念设计据描述的术语,概念设计中实体中实体间二元联系的描述间二元联系的描述(1:1:1,1:N
3、1:N,M:NM:N)。5本章的重要概念(本章的重要概念(1 1)(4)数数据据抽抽象象的的级级别别:数数据据模模型型的的定定义义,概概念念模模型型,逻逻辑辑模模型型(层层次次模模型型、网网状状模模型型、关关系系模模型型和和对对象象模模型型),外外部部模模型型,内内部部模模型型。三三层层模模式式和和两两级级映映像像,数据独立性数据独立性。数据抽象中各个层次中。数据抽象中各个层次中记录记录的联系。的联系。(5)DBMS:DBMS的工作模式和主要功能。的工作模式和主要功能。(6)DBS:DBS的的组组成成,DBA,DBS的的全全局局结结构构,DBS结构的分类。结构的分类。6 本章的重要概念(本章的
4、重要概念(2 2)从从2020世纪世纪5050年代中期开始,计算机的应用由科学年代中期开始,计算机的应用由科学研究部门逐渐扩展到企业、行政部门。至研究部门逐渐扩展到企业、行政部门。至6060年代,数年代,数据处理已成为计算机的主要应用。在据处理已成为计算机的主要应用。在6060年代末,数据年代末,数据库技术作为数据处理中的一门新技术发展起来的。经库技术作为数据处理中的一门新技术发展起来的。经过近过近4040年的发展,年的发展,数据库技术已是计算机软件领域的数据库技术已是计算机软件领域的一个重要分支一个重要分支,形成了较为完整的理论体系和实用技,形成了较为完整的理论体系和实用技术。本章先回顾数据
5、管理技术的发展过程,然后介绍术。本章先回顾数据管理技术的发展过程,然后介绍数据库中的基本概念,以使读者对数据库的概貌有所数据库中的基本概念,以使读者对数据库的概貌有所了解。了解。7前前 言言1963年,美国年,美国Honeywell公司的公司的IDS(Integrated Data Store)系统投入运行,揭开了数据库技术的序幕。系统投入运行,揭开了数据库技术的序幕。20世纪世纪70年代是数据库蓬勃发展的年代,网状系统和层次系统年代是数据库蓬勃发展的年代,网状系统和层次系统占据了整个数据库商用市场,而关系系统仅处于实验阶段。占据了整个数据库商用市场,而关系系统仅处于实验阶段。20世纪世纪80
6、年代,关系系统由于使用简便以及硬件性能的改善,年代,关系系统由于使用简便以及硬件性能的改善,逐步代替网状系统和层次系统占领了市场。逐步代替网状系统和层次系统占领了市场。20世纪世纪90年代,年代,关系数据库已成为数据库技术的主流。关系数据库已成为数据库技术的主流。进入进入21世纪以后,无论是市场的需求还是技术条件的成熟,对世纪以后,无论是市场的需求还是技术条件的成熟,对象数据库技术、象数据库技术、Web数据库技术的推广和普及已成定局。数据库技术的推广和普及已成定局。81.1 1.1 引言引言1.2 数据库的由来和发展数据库的由来和发展1.2.1 人工管理阶段人工管理阶段1.2.2 文件系统阶段
7、文件系统阶段1.2.3 数据库阶段数据库阶段1.2.4 高级数据库阶段高级数据库阶段91.2 1.2 数据库的由来和发展数据库的由来和发展磁盘容量的发展磁盘容量的发展数据管理技术的发展经历了人工管理、文件系统、数数据管理技术的发展经历了人工管理、文件系统、数据库阶段和高级数据库阶段。据库阶段和高级数据库阶段。10时间时间1956 1965 1971 1978 1981 1985 1995 2003 2008容量容量/轴轴5MB30MB100MB600MB1.2GB5GB10GB180GB1TB人工人工管理阶段管理阶段(上世纪(上世纪5050年代年代中期前中期前),计算机主),计算机主要用于科学
8、要用于科学计算。计算。外部存储器只有磁带、卡片和纸外部存储器只有磁带、卡片和纸带带等顺序存储设备等顺序存储设备。软件只有。软件只有汇编语言。汇编语言。数据处理数据处理的方式基本上是批处理。的方式基本上是批处理。人工管理阶段的数据管理有下列人工管理阶段的数据管理有下列特点:特点:数据不保存在计算机内。数据不保存在计算机内。无专用软件无专用软件对数据进行管理。对数据进行管理。只有程序(只有程序(programprogram)概念,没有)概念,没有文件(文件(filefile)概念)概念。数据面向程序。即一组数据对应一个程序。数据面向程序。即一组数据对应一个程序。111.2.1 1.2.1 人工管理
9、阶段人工管理阶段文件系统阶段(上世纪文件系统阶段(上世纪5050年代后期至年代后期至6060年代中期),年代中期),计算机开始用于计算机开始用于信息管理。随着数据量的增加,数据信息管理。随着数据量的增加,数据的存储、检索和维护问题成为紧迫的需要,数据结构的存储、检索和维护问题成为紧迫的需要,数据结构和数据管理技术迅速发展起来。此时,和数据管理技术迅速发展起来。此时,外部存储器外部存储器已已有磁盘、磁鼓等直接存取存储设备。软件领域出现了有磁盘、磁鼓等直接存取存储设备。软件领域出现了高级语言和操作系统高级语言和操作系统。操作系统中的。操作系统中的文件系统文件系统是专门是专门管理外存的数据管理软件。
10、数据处理的方式有批处理,管理外存的数据管理软件。数据处理的方式有批处理,也有联机实时处理。也有联机实时处理。121.2.2 1.2.2 文件系统阶段(文件系统阶段(1 1)文件系统阶段的数据管理有以下文件系统阶段的数据管理有以下特点:特点:数据以数据以“文件文件”形式可长期保存在外部存储器的磁盘上。形式可长期保存在外部存储器的磁盘上。数据的逻辑结构与物理结构有了区别,但比较简单。数据的逻辑结构与物理结构有了区别,但比较简单。文件组织已多样化。有索引文件、链接文件和直接存取文件组织已多样化。有索引文件、链接文件和直接存取文件等。文件等。数据不再属于某个特定的程序,数据不再属于某个特定的程序,可重
11、复使用。可重复使用。对数据的操作以记录为单位。对数据的操作以记录为单位。文件系统仍显露文件系统仍显露出三个出三个缺陷:缺陷:数据冗余(数据冗余(redundancyredundancy)数据不一致(数据不一致(inconsistencyinconsistency)数据联系弱(数据联系弱(poor data relationshippoor data relationship)131.2.2 1.2.2 文件系统阶段(文件系统阶段(2 2)职工职工工资文件工资文件职工档案文件职工档案文件职工保健文件职工保健文件 文件文件库库 数据库数据库14oooooo数据管理技术进入数据库阶段的标志是数据管理
12、技术进入数据库阶段的标志是20世纪世纪60年年代末的代末的三件大事:三件大事:1968年美国年美国IBM公司推出公司推出层次模型层次模型的的IMS系统系统。1969年美国年美国CODASYL组织发布了组织发布了DBTG报告,总报告,总结了当时各式各样的数据库,提出结了当时各式各样的数据库,提出网状模型网状模型。1970年美国年美国IBM公司的公司的E.F.Codd 连续发表论文,提连续发表论文,提出关系模型,奠定了出关系模型,奠定了关系数据库关系数据库的理论基础。的理论基础。151.2.3 1.2.3 数据库阶段(数据库阶段(1 1)数据库阶段的数据管理具有以下数据库阶段的数据管理具有以下特点
13、:特点:采用数据模型表示复杂的数据结构。采用数据模型表示复杂的数据结构。有较高的数据独立性。有较高的数据独立性。数据库系统为用户提供了方便的用户接口。数据库系统为用户提供了方便的用户接口。数据库系统数据库系统提供了四方提供了四方面的数据控制功能:并发控制,面的数据控制功能:并发控制,恢复,完整性和安全性。恢复,完整性和安全性。增加了系统的灵活性增加了系统的灵活性。161.2.3 1.2.3 数据库阶段(数据库阶段(2 2)1.2.3 数据库阶段(数据库阶段(3)171.2.3 数据库阶段(数据库阶段(4)程序和数据间的联系:程序和数据间的联系:文件系统阶段信息处理的传统方式:文件系统阶段信息处
14、理的传统方式:181.2.3 数据库阶段(数据库阶段(5)数据库阶段信息处理方式的演变数据库阶段信息处理方式的演变 19定义定义1.1 数据库(数据库(Database,DB):DB是长期存储在计算机内、是长期存储在计算机内、有组织的有组织的、统一管理统一管理的的相关相关数据数据的集合。的集合。DB能为各种用户共享,具有较小冗余度、数能为各种用户共享,具有较小冗余度、数据间联系紧密而又有较高的数据独立性等特点。据间联系紧密而又有较高的数据独立性等特点。201.2.3 数据库阶段(数据库阶段(6)定义定义1.2 数据库管理系统(数据库管理系统(DBMS):):DBMS是位于用户与是位于用户与OS
15、之间的一层数据管理软件,它为之间的一层数据管理软件,它为用户或应用程序提供访问用户或应用程序提供访问DB的方法,包括的方法,包括DB的的建立、查询、建立、查询、更新及各种数据控制更新及各种数据控制。DBMS总是基于某种数据模型,可以总是基于某种数据模型,可以分为层次型、网状型、关系型和面向对象型等。分为层次型、网状型、关系型和面向对象型等。211.2.3 数据库阶段(数据库阶段(7)OSDB 用户用户DBMS定义定义1.3 数据库系统(数据库系统(Database System,DBS):):DBS是实现有组织地、动态地存储大量关联数据、方是实现有组织地、动态地存储大量关联数据、方便多用户访问
16、的计算机硬件、软件和数据资源组成的系统,便多用户访问的计算机硬件、软件和数据资源组成的系统,即即采用采用数据库技术的计算机系统数据库技术的计算机系统。定义定义1.4 数据库技术(数据库技术(DBT):):数据库技术是研究数据库的结构、存储、设计、管理数据库技术是研究数据库的结构、存储、设计、管理和使用的一门软件学科。和使用的一门软件学科。221.2.3 数据库阶段(数据库阶段(8)2020世纪世纪8080年代的分布式数据库系统(年代的分布式数据库系统(DDBSDDBS)2020世纪世纪9090年代的对象数据库系统(年代的对象数据库系统(ODBSODBS)开放开放数据库互联技术(数据库互联技术(
17、ODBCODBC)2121世纪初的世纪初的 WebWeb数据库系统数据库系统 XMLXML数据库技术数据库技术 现代现代信息集成信息集成(DW(DW、OLAPOLAP、DM)DM)231.2.4 1.2.4 高级数据库阶段(高级数据库阶段(1 1)1.对象对象数据库系统主要有以下两个特点数据库系统主要有以下两个特点 对象数据模型能对象数据模型能完整地描述现实世界地数据结构完整地描述现实世界地数据结构,能表达,能表达数据间嵌套、递归的联系。数据间嵌套、递归的联系。具有面向对象技术的封装性(把数据与操作定义在一起)具有面向对象技术的封装性(把数据与操作定义在一起)和继承性(继承数据结构和操作)的特
18、点,和继承性(继承数据结构和操作)的特点,提高了软件的提高了软件的可重用性。可重用性。241.2.4 1.2.4 高级数据库阶段(高级数据库阶段(2 2)2.分布式分布式数据库系统主要有下面三个特点数据库系统主要有下面三个特点 数据库数据数据库数据物理上分布在各个场地物理上分布在各个场地,逻辑,逻辑上是一个整体。上是一个整体。每个场地既可以执行局部应用每个场地既可以执行局部应用(访问本地访问本地DB)DB),也可以执行全,也可以执行全局应用局应用(访问异地访问异地DB)DB)。各地计算机各地计算机由数据通信网络相联系。本地计算机单独不能胜由数据通信网络相联系。本地计算机单独不能胜任的处理任务,
19、任的处理任务,可通过可通过通信网络取得其它通信网络取得其它DBDB和计算机的支持。和计算机的支持。251.2.4 1.2.4 高级数据库阶段(高级数据库阶段(3 3)1.2.4 高级数据库阶段(高级数据库阶段(4)分布式数据库系统分布式数据库系统 26 1.2.4 高级数据库阶段(高级数据库阶段(5)3 3开放数据库互联(开放数据库互联(ODBCODBC)技术技术上上世世纪纪8080年年代代末末,普普遍遍共共识识是是有有必必要要建建立立一一个个公公共共的的、与与数数据据库库管管理理系系统统无无关关的的应应用用程程序序设设计计接接口口(APIAPI)。使使用用APIAPI以后,同一个应用程序就可
20、以访问不同的数据库服务器以后,同一个应用程序就可以访问不同的数据库服务器。最最先先上上市市的的公公共共APIAPI是是MicrosoftMicrosoft公公司司于于19921992年年推推出出的的ODBCODBC产产品品,因因此此就就把把这这种种技技术术命命名名为为ODBCODBC,即即开开放放数数据据库库互互连连技术技术。27 1.2.4 高级数据库阶段(高级数据库阶段(6)4 4XMLXML数据库技术数据库技术XMLXML是是一一种种能能够够表表达达比比传传统统数数据据模模型型中中的的数数据据结结构构化化程程度度低低的的数数据据语语言言。与与对对象象数数据据库库相相比比,XMLXML也也
21、提提供供了了一一条条途途径径来来表表示示有有嵌嵌套套结结构构的的数数据据,但但在在数数据据结结构构化化方方面面有有非非常常大大的的灵灵活性。活性。5 5现代信息集成技术现代信息集成技术数据仓库(数据仓库(DWDW)联机分析处理技术(联机分析处理技术(OLAPOLAP)数据挖据(数据挖据(DMDM)281.3 数据描述数据描述1.3.1 概念设计中的数据描述概念设计中的数据描述1.3.2 逻辑设计中的数据描述逻辑设计中的数据描述1.3.3 物理设计中的数据描述物理设计中的数据描述1.3.4 数据联系的描述数据联系的描述29在数据处理中,数据描述将涉及到不同的范畴。从在数据处理中,数据描述将涉及到
22、不同的范畴。从事物的特性到计算机中的具体表示,实际上经历了三个事物的特性到计算机中的具体表示,实际上经历了三个阶段阶段概念设计中的数据描述概念设计中的数据描述、逻辑设计中的数据描逻辑设计中的数据描述述和和物理设计中的数据描述物理设计中的数据描述。本节先介绍这三个阶段的。本节先介绍这三个阶段的数据描述,再介绍数据之间联系如何描述。数据描述,再介绍数据之间联系如何描述。301.3 1.3 数据描述数据描述实体(实体(entity):):客观存在,客观存在,可相互可相互区别的区别的事物。事物。实体集(实体集(entity set):性质相同的同类实体的:性质相同的同类实体的集合。集合。属性(属性(a
23、ttribute):实体有很多特性,每一个特性称:实体有很多特性,每一个特性称为属性。每一个属性有一个值域,其类型可以是整数为属性。每一个属性有一个值域,其类型可以是整数型、实数型、字符串型等。型、实数型、字符串型等。实体标识符(实体标识符(identifier):):能惟一标识实体的属性或能惟一标识实体的属性或属性属性集。称为集。称为关键码(关键码(key),或简称为键),或简称为键。311.3.1 1.3.1 概念设计中的数据描述概念设计中的数据描述字段(字段(field):标记实体属性的命名:标记实体属性的命名单位,单位,或数据项或数据项。是可命名是可命名的最小信息单位的最小信息单位,又
24、,又称为数据元素或初等项。称为数据元素或初等项。记录(记录(record):):字段的有序字段的有序集合。集合。文件(文件(file):同一类同一类记录的集合称为文件。记录的集合称为文件。关键码(关键码(key):):能惟一标识文件中每个记录的字段或能惟一标识文件中每个记录的字段或字段集,称为记录的关键码(简称为键)。字段集,称为记录的关键码(简称为键)。321.3.2 1.3.2 逻辑设计中的数据描述(逻辑设计中的数据描述(1 1)1.3.2 1.3.2 逻辑设计中的数据描述(逻辑设计中的数据描述(2 2)术语的对应关系:术语的对应关系:概念概念设计设计逻辑设计逻辑设计 实实体体 记录记录
25、属性属性 字段(数据字段(数据项项)实实体集体集 文件文件 实实体体标识标识符符 关关键码键码3334学生学生张三张三类型类型物理存储介质层次物理存储介质层次根根据据访访问问数数据据的的速速度度、成成本本和和可可靠靠性性,计计算算机机系统的存储介质可分成以下六类。系统的存储介质可分成以下六类。(1)高速缓冲存储器()高速缓冲存储器(cache)(2)主存储器()主存储器(main memory)(3)快擦写存储器()快擦写存储器(flash memory)(4)磁盘存储器()磁盘存储器(magnetic disk)(5)光存储器()光存储器(optical storage)(6)磁带()磁带(
26、tape storage)351.3.3 1.3.3 物理设计中的数据描述物理设计中的数据描述(1)(1)361.3.3 1.3.3 物理设计中的数据描述物理设计中的数据描述(2)(2)位位(Bit,比特):,比特):一个二进制位称为一个二进制位称为“位位”。字节字节(Byte):):8比特为比特为一个字节,一个字节,可存放可存放一个字符所对应一个字符所对应的的ASCII码。码。字字(Word):):若干个字节组成一个字。一个字所含的二进若干个字节组成一个字。一个字所含的二进制位的位数称为字长。制位的位数称为字长。块块(Block):):又称为物理块或物理记录。块是内存和外存又称为物理块或物理
27、记录。块是内存和外存交换信息的最小单位,每块的大小,通常为交换信息的最小单位,每块的大小,通常为210214字节。字节。桶桶(Bucket):):外存的逻辑单位,一个桶外存的逻辑单位,一个桶可包含可包含一个物理一个物理块或多个在空间上不一定连续的物理块。块或多个在空间上不一定连续的物理块。卷卷(Volume):):一个输入输出设备所能装载的全部有用信一个输入输出设备所能装载的全部有用信息,称为息,称为“卷卷”。371.3.3 1.3.3 物理设计中的数据描述物理设计中的数据描述(3)(3)定义定义1.5 联系(联系(relationship)是实体之间的相互关系。是实体之间的相互关系。与一个联
28、系有关的实体集个数,称为联系的元数。与一个联系有关的实体集个数,称为联系的元数。定义定义1.6 二元联系有以下三种类型:二元联系有以下三种类型:一对一联系:一对一联系:如果实体集如果实体集E1中每个实体至多和实体集中每个实体至多和实体集E2中的一个实体有联系,反之亦然中的一个实体有联系,反之亦然,记,记为为“1:1”。一对多联系:一对多联系:如果实体集如果实体集E1中每个实体可以与实体集中每个实体可以与实体集E2中任意个(零个或多个)实体间有联系,而中任意个(零个或多个)实体间有联系,而E2中每个实体至多和中每个实体至多和E1中一个实体有中一个实体有联系,联系,记为记为“1:N”。多对多联系:
29、多对多联系:如果实体集如果实体集E1中每个实体可以与实体集中每个实体可以与实体集E2中任意个(零个或多个)实体有联系,中任意个(零个或多个)实体有联系,反之亦然,反之亦然,记为记为“M:N”。381.3.4 1.3.4 数据联系的描述(数据联系的描述(1 1)1.3.4 1.3.4 数据联系的描述(数据联系的描述(2 2)例例1.2 1.2 391.3.4 1.3.4 数据联系的描述(数据联系的描述(3 3)例例1.31.3 40图图1.10 1.10 三元联系三元联系 图图1.11 1.11 一元联系一元联系 1.4.1 数据抽象的过程数据抽象的过程 1.4.2 概念模型概念模型 1.4.3
30、 逻辑模型逻辑模型 1.4.4 外部模型外部模型 1.4.5 内部模型内部模型 1.4.6 三层模式和两级映像三层模式和两级映像 1.4.7 高度的数据独立性高度的数据独立性411.4 数据抽象的级别数据抽象的级别模型(模型(model):):对现实世界的抽象。对现实世界的抽象。数据模型:数据模型:描述数据库的结构和语义,对现实世界的描述数据库的结构和语义,对现实世界的数据进行抽象。数据进行抽象。从现实世界的信息到数据库存储的数据以及用户使用从现实世界的信息到数据库存储的数据以及用户使用的数据是一个逐步抽象过程。的数据是一个逐步抽象过程。根据数据抽象的级别定义了四种模型:根据数据抽象的级别定义
31、了四种模型:概念数据模型概念数据模型、逻辑数据模型逻辑数据模型、外部数据模型外部数据模型和和内部数据模型内部数据模型。一般,。一般,在提及时省略在提及时省略“数据数据”两字。两字。421.4.1 1.4.1 数据数据抽象的过程(抽象的过程(1 1)表表达达用用户户需需求求观观点点的的数数据据全全局局逻逻辑辑结结构构的的模模型型,称称为为“概念模型概念模型”。表表达达计计算算机机实实现现观观点点的的DBDB全全局局逻逻辑辑结结构构的的模模型型,称称为为“逻辑模型逻辑模型”。表表达达用用户户使使用用观观点点的的DBDB局局部部逻逻辑辑结结构构的的模模型型,称称为为“外部模型外部模型”。表达表达DB
32、DB物理结构的模型,称为物理结构的模型,称为“内部模型内部模型”。431.4.1 1.4.1 数据数据抽象的过程(抽象的过程(2 2)441.4.1 1.4.1 数据数据抽象的过程(抽象的过程(3 3)综合综合图图1.12 1.12 四种模型之间的相互关系四种模型之间的相互关系数据抽象的过程,具体步骤如下:数据抽象的过程,具体步骤如下:第第1步步:根根据据用用户户需需求求,设设计计数数据据库库的的概概念念模模型型,这这是是一一个个“综合综合”的过程。的过程。第第2步步:根根据据转转换换规规则则,把把概概念念模模型型转转换换成成数数据据库库的的逻逻辑辑模模型,这是一个型,这是一个“转换转换”的过
33、程。的过程。第第3步步:根根据据用用户户的的业业务务特特点点,设设计计不不同同的的外外部部模模型型,给给程程序员使用。序员使用。第第4步:步:数据库实现时,要根据逻辑模型设计其内部模型。数据库实现时,要根据逻辑模型设计其内部模型。一一般般,上上述述第第1步步称称为为DB的的概概念念设设计计,第第2、3步步称称为为DB的的逻辑设计逻辑设计,第,第4步称为步称为DB的的物理设计物理设计。451.4.1 1.4.1 数据数据抽象的过程(抽象的过程(4 4)概念模型的特点概念模型的特点如下所述:如下所述:(1)概概念念模模型型表表达达了了数数据据的的整整体体逻逻辑辑结结构构,它它是是系系统统用用户户对
34、对整整个应用项目涉及的数据的全面描述。个应用项目涉及的数据的全面描述。(2)概念模型是从用户需求的观点出发,对数据建模。)概念模型是从用户需求的观点出发,对数据建模。(3)概概念念模模型型独独立立于于硬硬件件和和软软件件。硬硬件件独独立立意意味味着着概概念念模模型型不不依依赖赖于于硬硬件件设设备备,软软件件独独立立意意味味着着该该模模型型不不依依赖赖于于实实现现时时的的DBMS软件。软件。(4)概念模型是数据库设计人员与用户之间进行交流的工具。)概念模型是数据库设计人员与用户之间进行交流的工具。461.4.2 1.4.2 概念模型概念模型(1 1)ERER模模型型是是P.P.ChenP.P.C
35、hen于于19761976年年提提出出的的。ERER模模型型直直接接从从现现实实世世界界中中抽抽象象出出实实体体类类型型及及实实体体间间联联系系,然然后后用用实实体体联联系系图图(ERER图图)表表示示数数据据模模型型。设设计计ERER图图的的方方法法称称为为ERER方法。方法。ERER图是直接表示概念模型的有力工具。图是直接表示概念模型的有力工具。定义定义1.8 ER1.8 ER图有图有三个基本成分三个基本成分:矩形框,用于表示实体类型矩形框,用于表示实体类型(问题对象(问题对象)。菱形框,用于表示联系类型(实体间联系)菱形框,用于表示联系类型(实体间联系)。椭圆形框,用于表示实体类型和联系
36、类型的属性。椭圆形框,用于表示实体类型和联系类型的属性。471.4.2 1.4.2 概念模型概念模型(2 2)481.4.2 1.4.2 概念模型概念模型(3 3)图图1.13 ER1.13 ER图实例图实例ERER模模型型两两个个明明显显的的优优点点:一一是是简简单单,容容易易理理解解,真真实实地地反反映映用用户户的的需需求求;二二是是与与计计算算机机无无关关,用用户户容容易易接接受受。ERER模型已成为软件工程的一个重要设计方法。模型已成为软件工程的一个重要设计方法。但但是是ERER模模型型只只能能说说明明实实体体间间语语义义的的联联系系,还还不不能能进进一一步步说说明明详详细细的的数数据
37、据结结构构。在在数数据据库库设设计计时时,遇遇到到实实际际问问题题总总是是先先设设计计一一个个ERER模模型型,然然后后再再把把ERER模模型型转转换换成成计算机能实现的数据模型计算机能实现的数据模型,譬如关系模型。,譬如关系模型。491.4.2 1.4.2 概念模型概念模型(4 4)在在选选定定DBMS软软件件后后,需需要要将将概概念念模模型型按按照照选选定定的的DBMS的特点转换成逻辑模型。的特点转换成逻辑模型。逻辑模型具有逻辑模型具有下列特点:下列特点:(1)逻逻辑辑模模型型表表达达了了DB的的整整体体逻逻辑辑结结构构,是是设设计计人人员员对对整整个个应应用项目数据库的全面描述。用项目数
38、据库的全面描述。(2)逻辑模型是从数据库实现的观点出发,对数据建模。)逻辑模型是从数据库实现的观点出发,对数据建模。(3)逻辑模型独立于硬件)逻辑模型独立于硬件,依赖,依赖于软件(于软件(DBMS)。)。(4)逻辑模型是数据库设计人员与应用程序员)逻辑模型是数据库设计人员与应用程序员之间交流之间交流的工具。的工具。501.4.3 1.4.3 逻辑模型逻辑模型用树型(层次)结构表示用树型(层次)结构表示实体类型及实体间联系的数实体类型及实体间联系的数据模型称为层次模型(据模型称为层次模型(hierarchical modelhierarchical model)。)。层次模型的特点是记录之间的联
39、系层次模型的特点是记录之间的联系通过指针来实现通过指针来实现,查询效率较高。与查询效率较高。与文件系统方式文件系统方式相比,层次模型是一相比,层次模型是一个飞跃,用户和设计者面对的是逻辑数据而不是物理个飞跃,用户和设计者面对的是逻辑数据而不是物理数据,用户不必花费大量的精力考虑数据的物理细节。数据,用户不必花费大量的精力考虑数据的物理细节。逻辑数据与物理数据之间的转换由逻辑数据与物理数据之间的转换由DBMSDBMS完成。完成。层次模型有层次模型有两个缺点两个缺点:一是只能表示:一是只能表示1:N1:N联系,联系,虽有虽有多种辅助手段实现多种辅助手段实现M:NM:N联系但较联系但较复杂;复杂;二
40、是由于层次二是由于层次顺序的严格和复杂,引起数据的查询和更新操作很复顺序的严格和复杂,引起数据的查询和更新操作很复杂,因此应用程序的编写也比较复杂。杂,因此应用程序的编写也比较复杂。511.1.层次模型(层次模型(1 1)521.1.层次模型(层次模型(2 2)层次模型例子层次模型例子 层次模型的具体实例层次模型的具体实例(树结构)(树结构)用用有向图结构有向图结构表示实体类型及实体间联系的数据模表示实体类型及实体间联系的数据模型称为网状模型(型称为网状模型(network modelnetwork model)。)。网状模型的特点是记录之间联系网状模型的特点是记录之间联系通过指针实现通过指针
41、实现,M:NM:N联系也容易实现(一个联系也容易实现(一个M:NM:N联系可拆成两个联系可拆成两个1:N1:N联系),查询效率较高。联系),查询效率较高。网状模型的网状模型的缺点缺点是数据结构复杂和编程复杂。是数据结构复杂和编程复杂。532.2.网状模型(网状模型(1 1)542.2.网状模型(网状模型(2 2)网状模型例子网状模型例子网状模型的实例(局部)网状模型的实例(局部)(有向图结构)(有向图结构)层次模型层次模型(DS是树结构)是树结构)网状模型网状模型(DS是有向图结构)是有向图结构)55关系模型(关系模型(relational modelrelational model)的主要特
42、征是用)的主要特征是用二二维表格维表格表达实体集。表达实体集。与前两种模型相比,与前两种模型相比,数据结构简单数据结构简单,容易为初学者,容易为初学者理解。理解。关系模型是由关系模型是由若干个关系模式组成的集合若干个关系模式组成的集合。关系模式相当于前面提到的记录类型,它的实例称关系模式相当于前面提到的记录类型,它的实例称为关系,为关系,每个关系实际上是一张二维表格每个关系实际上是一张二维表格。563.3.关系模型(关系模型(1 1)例例1.71.7 573.3.关系模型(关系模型(2 2)TEACHERTEACHER模式(模式(T#T#,TNAMETNAME,TITLETITLE)COURS
43、ECOURSE模式(模式(C#C#,CNAMECNAME,T#T#)STUDENTSTUDENT模式(模式(S#S#,SNAMESNAME,AGEAGE,SEXSEX)SCSC模式(模式(S#S#,C#C#,SCORESCORE)图图1.18 1.18 关系模型的例子关系模型的例子 583.3.关系模型(关系模型(3 3)TEACHER关系关系COURSE关系关系T#T#TNAMETNAME TITLETITLEC#C#CNAMECNAMET#T#T2T2SHISHI教授教授C1C1C CT2T2T3T3LILI副教授副教授C2C2DBDBT3T3T1T1DAIDAI讲师讲师C3C3OSOST
44、3T3T4T4GUGU讲师讲师C4C4C+C+T2T2STUDENT关系关系SC关系关系S#S#SNAMESNAME AGEAGESEXSEXS#S#C#C#SCORESCORES1S1WANGWANG2020M MS1S1C1C18080S4S4LIULIU1818F FS1S1C2C26060S2S2HUHU1717M MS1S1C3C37070S3S3XIAXIA1919F FS4S4C4C49090S2S2C1C18585图图1.19 1.19 关系模型的实例关系模型的实例S2S2C2C27575593.3.关系模型(关系模型(4 4)关系模型和层次、网状模型的关系模型和层次、网状模型
45、的最大差别最大差别是用是用关键码关键码而不是用指针导航数据,表格简单,易懂,用户只需用而不是用指针导航数据,表格简单,易懂,用户只需用简单的查询语句就可以对数据库进行操作,并不涉及存简单的查询语句就可以对数据库进行操作,并不涉及存储结构、访问技术等细节。储结构、访问技术等细节。关系模型是关系模型是数学化的模型数学化的模型。由于可把表格看成一个集合,。由于可把表格看成一个集合,因此集合论、数理逻辑等知识可引入到关系模型中来因此集合论、数理逻辑等知识可引入到关系模型中来。对象(对象(object)是现实世界中实体的模型化,与实体概是现实世界中实体的模型化,与实体概念相仿,但远比实体复杂。念相仿,但
46、远比实体复杂。将属性集和方法集相同的所有对象组合在一起,构成了将属性集和方法集相同的所有对象组合在一起,构成了一个一个类(类(class)。604.4.对象模型(对象模型(1 1)614.4.对象模型(对象模型(2 2)类类SCPCPSSCORE类类COURSEC#CNAMEPT类类TEACHERT#TNAMETITLE类类STUDENTS#SNAMEAGESEX图图1.20 1.20 对象模型的类层次例子对象模型的类层次例子四种逻辑模型的比较四种逻辑模型的比较层层次模型次模型网状模型网状模型关系模型关系模型面向面向对对象模型象模型创创始始1968年年IBM公司公司IMS系系统统1969年年C
47、ODASYLDBTG报报告告1970年年E.F.Codd提出关系模型提出关系模型20世世纪纪80年代年代数据数据结结构构复复杂杂(树结树结构)构)复复杂杂(有向(有向图结图结构)构)简单简单(二(二维维表)表)复复杂杂(嵌套嵌套、递归递归)数据数据联联系系通通过过指指针针通通过过指指针针通通过过表表间间的公共属性的公共属性 通通过对过对象象标识标识查询语查询语言言过过程性程性语语言言过过程性程性语语言言非非过过程性程性语语言言面向面向对对象象语语言言典型典型产产品品IMSIDS/IMAGE/3000IDMSTOTALOracleSybaseDB2SQL ServerInformixONTOS
48、DB盛行期盛行期20世世纪纪70年代年代70年代至年代至80年代中期年代中期80年代至年代至现现在在90年代至年代至现现在在62例例1.9 1.9 图图1.181.18所所示示的的关关系系模模型型由由TEACHERTEACHER、COURSECOURSE、STUDENTSTUDENT和和SCSC等四个关系模式组成。等四个关系模式组成。外部模型中的模式称为外部模型中的模式称为“视图视图”(ViewView)。)。学生视图学生视图 STUDENT_VIEWSTUDENT_VIEW(S#S#,SNAMESNAME,C#C#,CNAMECNAME,SCORESCORE,T#T#,TNAMETNAME)
49、教师视图教师视图 TEACHER_VIEWTEACHER_VIEW(T#T#,TNAMETNAME,C#C#,CNAMECNAME,S#S#,SNAMESNAME,SEXSEX,SCORESCORE)631.4.4 1.4.4 外部模型(外部模型(1 1)外部模型具有如下的外部模型具有如下的特点:特点:(1 1)外部模型是逻辑模型的一个逻辑子集)外部模型是逻辑模型的一个逻辑子集。(2 2)外部模型独立于硬件,依赖于软件)外部模型独立于硬件,依赖于软件。(3 3)外部模型反映了用户使用数据库的观点。)外部模型反映了用户使用数据库的观点。从整个系统考察,外部模型具有下列从整个系统考察,外部模型具有
50、下列优点:优点:(1 1)简化了用户的观点)简化了用户的观点。(2 2)有助于数据库的安全性保护)有助于数据库的安全性保护。(3 3)外部模型是对概念模型的支持。)外部模型是对概念模型的支持。641.4.4 1.4.4 外部模型(外部模型(2 2)内内部部模模型型又又称称为为物物理理模模型型,是是数数据据库库最最低低层层的的抽抽象象,它它描描述述数数据据在在磁磁盘盘或或磁磁带带上上的的存存储储方方式式(文文件件的的结结构构)、存存取取设设备备(外外存存的的空空间间分分配配)和和存存取取方方法(主索引和辅助索引)。法(主索引和辅助索引)。内部模型是与硬件和软件紧密相连的。内部模型是与硬件和软件紧