Access基础与应用教程PPT课件 第1章 数据库基础概述数学

上传人:大米 文档编号:579027025 上传时间:2024-08-25 格式:PPT 页数:82 大小:1.54MB
返回 下载 相关 举报
Access基础与应用教程PPT课件 第1章 数据库基础概述数学_第1页
第1页 / 共82页
Access基础与应用教程PPT课件 第1章 数据库基础概述数学_第2页
第2页 / 共82页
Access基础与应用教程PPT课件 第1章 数据库基础概述数学_第3页
第3页 / 共82页
Access基础与应用教程PPT课件 第1章 数据库基础概述数学_第4页
第4页 / 共82页
Access基础与应用教程PPT课件 第1章 数据库基础概述数学_第5页
第5页 / 共82页
点击查看更多>>
资源描述

《Access基础与应用教程PPT课件 第1章 数据库基础概述数学》由会员分享,可在线阅读,更多相关《Access基础与应用教程PPT课件 第1章 数据库基础概述数学(82页珍藏版)》请在金锄头文库上搜索。

1、数据库及其应用是计算机数据库及其应用是计算机科学中一个重要的分枝。科学中一个重要的分枝。数据库技术应用非常快、数据库技术应用非常快、非常广泛,现在,许多单非常广泛,现在,许多单位的正常业务开展都离不位的正常业务开展都离不开数据库。开数据库。第第1 1章章 数据库基础概述数据库基础概述本章主要内容 退出退出1.1 1.1 数据管理发展概况数据管理发展概况1.2 1.2 数据库系统简述数据库系统简述1.3 1.3 数据模型数据模型1.4 1.4 关系数据库关系数据库1.5 1.5 关系运算关系运算1.6 1.6 数据库设计简述数据库设计简述1.1 1.1 数据管理发展概况数据管理发展概况 自从世界

2、上第一台电子数字计算机(简自从世界上第一台电子数字计算机(简称计算机)诞生以来,数据管理经历了从较称计算机)诞生以来,数据管理经历了从较为低级的人工管理到先进的数据库、数据仓为低级的人工管理到先进的数据库、数据仓库、数据挖掘的演变。库、数据挖掘的演变。1.1.1 1.1.1 数据及数据处理数据及数据处理 数据是描述事物的符号记录,例如:数据是描述事物的符号记录,例如:“黄山黄山”、“95”。也可以说,数据是存储在某一种媒体上能够。也可以说,数据是存储在某一种媒体上能够识别的物理符号。识别的物理符号。 数据不仅可以包括数字、字母、文字和其他特殊数据不仅可以包括数字、字母、文字和其他特殊字符组成的

3、文本形式,而且还可以包括图像、图形、字符组成的文本形式,而且还可以包括图像、图形、影像、声音、动画等多媒体形式等,它们经过数字化影像、声音、动画等多媒体形式等,它们经过数字化后可以存入计算机。后可以存入计算机。 数据处理是把数据加工处理成为信息的过程。数据处理是把数据加工处理成为信息的过程。 信息是数据根据需要进行加工处理后得到的结果。信息是数据根据需要进行加工处理后得到的结果。 1.1.1 1.1.1 数据及数据处理数据及数据处理 (续)(续) 信息对于数据接收者来说是有意义的。信息对于数据接收者来说是有意义的。 例如:例如:“黄山黄山”、“95”只是单纯的数据,没有具只是单纯的数据,没有具

4、体意义,而体意义,而“黄山同学本学期英语期末考试成绩为黄山同学本学期英语期末考试成绩为95分分”就是一条有意义的信息。此外,就是一条有意义的信息。此外,“旅游景点黄山的旅游景点黄山的门票费是每人门票费是每人95元人民币元人民币”也是一条有意义的信息。也是一条有意义的信息。 1.1 1.1 数据管理发展概况数据管理发展概况(续)(续) 数据管理技术的发展阶段数据管理技术的发展阶段数据管理技术的发展阶段数据管理技术的发展阶段1.1.2 1.1.2 人工管理人工管理人工管理人工管理 (外存储器只有纸带、卡片和磁带,而没有磁盘(外存储器只有纸带、卡片和磁带,而没有磁盘(外存储器只有纸带、卡片和磁带,而

5、没有磁盘(外存储器只有纸带、卡片和磁带,而没有磁盘 )1.1.3 1.1.3 文件系统阶段文件系统阶段文件系统阶段文件系统阶段 文件中只存储数据,不存储文件记录的结构描述信息。文件的建立、存取、查询、插入、删文件中只存储数据,不存储文件记录的结构描述信息。文件的建立、存取、查询、插入、删文件中只存储数据,不存储文件记录的结构描述信息。文件的建立、存取、查询、插入、删文件中只存储数据,不存储文件记录的结构描述信息。文件的建立、存取、查询、插入、删除、修改等所有操作,都要用程序来实现。除、修改等所有操作,都要用程序来实现。除、修改等所有操作,都要用程序来实现。除、修改等所有操作,都要用程序来实现。

6、 1.1.4 1.1.4 数据库系统数据库系统数据库系统数据库系统 1.1 1.1 数据管理发展概况数据管理发展概况(续)(续)1.1.5 1.1.5 分布式数据库系统分布式数据库系统分布式数据库系统分布式数据库系统 分布式数据库是数据库技术与网络技术相结合的产物,分布计算主分布式数据库是数据库技术与网络技术相结合的产物,分布计算主分布式数据库是数据库技术与网络技术相结合的产物,分布计算主分布式数据库是数据库技术与网络技术相结合的产物,分布计算主要体现在客户机服务器模式和分布式数据库体系结构两个方面。要体现在客户机服务器模式和分布式数据库体系结构两个方面。要体现在客户机服务器模式和分布式数据库

7、体系结构两个方面。要体现在客户机服务器模式和分布式数据库体系结构两个方面。 1.1.6 1.1.6 面向对象数据库系统面向对象数据库系统面向对象数据库系统面向对象数据库系统 将面向对象技术与数据库技术结合产生出面向对象的数据库系统。将面向对象技术与数据库技术结合产生出面向对象的数据库系统。将面向对象技术与数据库技术结合产生出面向对象的数据库系统。将面向对象技术与数据库技术结合产生出面向对象的数据库系统。 1.1.7 1.1.7 数据仓库数据仓库数据仓库数据仓库 数据仓库是支持管理决策过程的、面向主题的、集成的、稳定的、数据仓库是支持管理决策过程的、面向主题的、集成的、稳定的、数据仓库是支持管理

8、决策过程的、面向主题的、集成的、稳定的、数据仓库是支持管理决策过程的、面向主题的、集成的、稳定的、随时间变化的数据集合。随时间变化的数据集合。随时间变化的数据集合。随时间变化的数据集合。 1.1.8 1.1.8 数据挖掘数据挖掘数据挖掘数据挖掘 数据挖掘,又称为数据库中的知识发现,就是一个从数据库中获取有效的、数据挖掘,又称为数据库中的知识发现,就是一个从数据库中获取有效的、数据挖掘,又称为数据库中的知识发现,就是一个从数据库中获取有效的、数据挖掘,又称为数据库中的知识发现,就是一个从数据库中获取有效的、新颖的、潜在有用的、最终可理解的模式(注:模式又称为知识)的复杂过程。新颖的、潜在有用的、

9、最终可理解的模式(注:模式又称为知识)的复杂过程。新颖的、潜在有用的、最终可理解的模式(注:模式又称为知识)的复杂过程。新颖的、潜在有用的、最终可理解的模式(注:模式又称为知识)的复杂过程。 1.2.1 1.2.1 数据库数据库 数据库(数据库(数据库(数据库(DatabaseDatabase,简称为,简称为,简称为,简称为DBDB)是长期存储在计算机内、)是长期存储在计算机内、)是长期存储在计算机内、)是长期存储在计算机内、有组织的、可共享的、统一管理的相关数据的集合。有组织的、可共享的、统一管理的相关数据的集合。有组织的、可共享的、统一管理的相关数据的集合。有组织的、可共享的、统一管理的相

10、关数据的集合。 数据库中的数据按一定的数据模型进行组织、描述和存储,数据库中的数据按一定的数据模型进行组织、描述和存储,数据库中的数据按一定的数据模型进行组织、描述和存储,数据库中的数据按一定的数据模型进行组织、描述和存储,具有较小的冗余度、较高数据独立性和易扩展性。具有较小的冗余度、较高数据独立性和易扩展性。具有较小的冗余度、较高数据独立性和易扩展性。具有较小的冗余度、较高数据独立性和易扩展性。 数据库中的数据不只是面向某一种特定的应用,而是可以数据库中的数据不只是面向某一种特定的应用,而是可以数据库中的数据不只是面向某一种特定的应用,而是可以数据库中的数据不只是面向某一种特定的应用,而是可

11、以面向多种的应用,可以被多个用户、多个应用程序所共享。面向多种的应用,可以被多个用户、多个应用程序所共享。面向多种的应用,可以被多个用户、多个应用程序所共享。面向多种的应用,可以被多个用户、多个应用程序所共享。 例如:例如:例如:例如: 图书管理数据库、财务管理数据库、学生管理数据库。图书管理数据库、财务管理数据库、学生管理数据库。图书管理数据库、财务管理数据库、学生管理数据库。图书管理数据库、财务管理数据库、学生管理数据库。1.2 1.2 数据库系统简述数据库系统简述 1、数据库管理系统、数据库管理系统 数据库管理系统(数据库管理系统(DataBase Management System,简

12、称,简称 DBMS)是数据库系统的核心软)是数据库系统的核心软件,其主要任务是支持用户对数据库的基本操件,其主要任务是支持用户对数据库的基本操作,对数据库的建立、运行和维护进行统一管作,对数据库的建立、运行和维护进行统一管理、统一控制。理、统一控制。 注意:注意:用户不能直接接触数据库,而只能用户不能直接接触数据库,而只能通过通过DBMS 来操作数据库。来操作数据库。1.2.2 1.2.2 数据库管理系统数据库管理系统2数据库管理系统的功能数据库管理系统的功能(1)数据定义功能)数据定义功能 DBMS 提供了数据定义语言(提供了数据定义语言(Data Description Language,

13、简称,简称DDL)供用户定义数据库的结构、)供用户定义数据库的结构、数据之间的联系等。数据之间的联系等。(2) 数据操纵功能数据操纵功能 DBMS 提供了数据操纵语言(提供了数据操纵语言(Data Manipulation Language,简称简称 DML)来完成用户对数据库提出的)来完成用户对数据库提出的各种操作要求,以实现对数据库的插入、修改、各种操作要求,以实现对数据库的插入、修改、删除、检索等基本操作。删除、检索等基本操作。(3)数据库运行控制功能)数据库运行控制功能 DBMS 提供了数据控制语言(提供了数据控制语言(Data Control Language,简称,简称DCL)负责

14、数据完整性、安全性的)负责数据完整性、安全性的定义与检查以及并发控制功能,定义与检查以及并发控制功能,(4)数据库维护功能)数据库维护功能 DBMS 还可以对已经建立好的数据库进行维护,还可以对已经建立好的数据库进行维护,比如数据字典的自动维护,数据库的备份、恢复等。比如数据字典的自动维护,数据库的备份、恢复等。(5)数据库通信功能)数据库通信功能 DBMS 应提供网络环境的数据通信功能。应提供网络环境的数据通信功能。数据库管理系统的功能(续)数据库管理系统的功能(续)1.2.3 1.2.3 数据库系统数据库系统1数据库系统的组成数据库系统的组成 数据库系统(数据库系统(Database Sy

15、stem,简称,简称 DBS)是指采用了数据库技术的计算机应用)是指采用了数据库技术的计算机应用系统。它实际上是一个集合体。系统。它实际上是一个集合体。 (1) 数据库(数据库(DB)。)。 (2) 数据库管理系统(数据库管理系统(DBMS),它是数据),它是数据库系统的核心组成部分。库系统的核心组成部分。 (3) 计算机硬件环境、操作系统环境及各种计算机硬件环境、操作系统环境及各种实用程序。实用程序。 (4) 管理和使用数据库系统的各类人员。管理和使用数据库系统的各类人员。数据库系统(数据库系统( DBS)通常包括:)通常包括:管理和使用数据库系统的各类人员可以分为:管理和使用数据库系统的各

16、类人员可以分为:数据库管理员(数据库管理员(数据库管理员(数据库管理员(Dadabase AdministratorDadabase Administrator,即,即,即,即 DBADBA)。)。)。)。全面负责建立、维护、管理和控制数据库系统。全面负责建立、维护、管理和控制数据库系统。全面负责建立、维护、管理和控制数据库系统。全面负责建立、维护、管理和控制数据库系统。系统分析员。系统分析员是数据库系统建设期的主要参与系统分析员。系统分析员是数据库系统建设期的主要参与系统分析员。系统分析员是数据库系统建设期的主要参与系统分析员。系统分析员是数据库系统建设期的主要参与人员,负责应用系统的需求分

17、析和规范说明,确定系统的人员,负责应用系统的需求分析和规范说明,确定系统的人员,负责应用系统的需求分析和规范说明,确定系统的人员,负责应用系统的需求分析和规范说明,确定系统的基本功能,数据库结构和应用程序的设计,以及软硬件的基本功能,数据库结构和应用程序的设计,以及软硬件的基本功能,数据库结构和应用程序的设计,以及软硬件的基本功能,数据库结构和应用程序的设计,以及软硬件的配置,并组织整个系统的开发。配置,并组织整个系统的开发。配置,并组织整个系统的开发。配置,并组织整个系统的开发。应用程序员(应用程序员(应用程序员(应用程序员(Application ProgrammerApplication

18、 Programmer)。应用程序员)。应用程序员)。应用程序员)。应用程序员根据数据库系统的功能需求,设计和编写应用系统的程序根据数据库系统的功能需求,设计和编写应用系统的程序根据数据库系统的功能需求,设计和编写应用系统的程序根据数据库系统的功能需求,设计和编写应用系统的程序模块,并参与对程序模块的测试。模块,并参与对程序模块的测试。模块,并参与对程序模块的测试。模块,并参与对程序模块的测试。终端用户(终端用户(终端用户(终端用户(End UserEnd User)。按照用户需求的信息以及获得信)。按照用户需求的信息以及获得信)。按照用户需求的信息以及获得信)。按照用户需求的信息以及获得信息

19、的方式的不同,一般可将终端用户分为操作层、管理层息的方式的不同,一般可将终端用户分为操作层、管理层息的方式的不同,一般可将终端用户分为操作层、管理层息的方式的不同,一般可将终端用户分为操作层、管理层和决策层,他们通过应用系统的用户接口使用数据库。和决策层,他们通过应用系统的用户接口使用数据库。和决策层,他们通过应用系统的用户接口使用数据库。和决策层,他们通过应用系统的用户接口使用数据库。 2 2、数据库系统的特点、数据库系统的特点(1) 数据低冗余、共享性高。数据低冗余、共享性高。(2)有统一的数据控制功能。包括数据的安)有统一的数据控制功能。包括数据的安全性控制全性控制 、数据的完整性控制、

20、并发控制、数据的完整性控制、并发控制 、数据备份、数据恢复等。数据备份、数据恢复等。(3) 数据独立性高。数据的独立性包括逻数据独立性高。数据的独立性包括逻辑独立性和物理独立性。辑独立性和物理独立性。 数据的逻辑独立性是指当数据的总体逻数据的逻辑独立性是指当数据的总体逻辑结构改变时,数据的局部逻辑结构不变,辑结构改变时,数据的局部逻辑结构不变,由于应用程序是依据数据的局部逻辑结构编由于应用程序是依据数据的局部逻辑结构编写的,所以应用程序不必须修改,从而保证写的,所以应用程序不必须修改,从而保证了数据与程序间的逻辑独立性。了数据与程序间的逻辑独立性。 例如,在原有的某些记录类型中增加新例如,在原

21、有的某些记录类型中增加新的数据项,而应用程序不必须修改,体现了的数据项,而应用程序不必须修改,体现了数据的逻辑独立性。数据的逻辑独立性。 数数据据的的物物理理独独立立性性是是指指当当数数据据的的存存储储结结构构改改变变时时,数数据据的的逻逻辑辑结结构构不不变变,从从而而应应用程序也不必改变。用程序也不必改变。 例例如如,改改变变存存储储设设备备(如如换换了了一一个个磁磁盘盘来来存存储储该该数数据据库库),而而应应用用程程序序不不必必须须修修改改,体现了数据的物理独立性。体现了数据的物理独立性。注意三个概念:注意三个概念:数数数数据据据据库库库库(DBDB)、数数数数据据据据库库库库管管管管理理

22、理理系系系系统统统统(DBMSDBMS)、数据库系统(数据库系统(数据库系统(数据库系统(DBSDBS)是三个不同的概念。)是三个不同的概念。)是三个不同的概念。)是三个不同的概念。 数据库强调的是数据。数据库强调的是数据。数据库强调的是数据。数据库强调的是数据。 数据库管理系统是管理数据库的工具软件。数据库管理系统是管理数据库的工具软件。数据库管理系统是管理数据库的工具软件。数据库管理系统是管理数据库的工具软件。 数据库系统强调的则是一个整体系统。数据库系统强调的则是一个整体系统。数据库系统强调的则是一个整体系统。数据库系统强调的则是一个整体系统。 数数数数据据据据库库库库系系系系统统统统(

23、DBSDBS)包包包包含含含含数数数数据据据据库库库库(DBDB)及及及及数数数数据库管理系统(据库管理系统(据库管理系统(据库管理系统(DBMSDBMS)。)。)。)。 数据库应用系统是为最终用户使用数据库数据库应用系统是为最终用户使用数据库而开发的软件系统。而开发的软件系统。 例如:图书馆的管理系统、企业的信息管例如:图书馆的管理系统、企业的信息管理系统、财会信息管理系统、高校的教务管理理系统、财会信息管理系统、高校的教务管理系统等等。系统等等。 1.2.4 1.2.4 数据库应用系统数据库应用系统1.2.5 1.2.5 数据库系统的三级模式及二级映射结构数据库系统的三级模式及二级映射结构

24、 根据美国国家标准化协会和标准计划与需求委根据美国国家标准化协会和标准计划与需求委员会提出的建议,数据库系统的内部体系结构是三员会提出的建议,数据库系统的内部体系结构是三级模式和二级映射结构。级模式和二级映射结构。 三级模式分别是概念模式、外模式和内模式。三级模式分别是概念模式、外模式和内模式。 二级映射分别是概念模式到内模式的映射和外二级映射分别是概念模式到内模式的映射和外模式到概念模式的映射。模式到概念模式的映射。 1数据库系统的三级模式数据库系统的三级模式(1)概念模式)概念模式 概念模式也称为模式。它是数据库中全局概念模式也称为模式。它是数据库中全局数据逻辑结构的描述,是所有用户(应用

25、)数据逻辑结构的描述,是所有用户(应用)的公共数据视图。的公共数据视图。 定义模式时不仅要定义数据的逻辑结构(例如定义模式时不仅要定义数据的逻辑结构(例如定义模式时不仅要定义数据的逻辑结构(例如定义模式时不仅要定义数据的逻辑结构(例如数据记录由哪些数据项构成,数据项的名字、类型、数据记录由哪些数据项构成,数据项的名字、类型、数据记录由哪些数据项构成,数据项的名字、类型、数据记录由哪些数据项构成,数据项的名字、类型、取值范围等),而且要定义与数据有关的安全性、取值范围等),而且要定义与数据有关的安全性、取值范围等),而且要定义与数据有关的安全性、取值范围等),而且要定义与数据有关的安全性、完整性

26、要求,定义这些数据之间的联系。对概念模完整性要求,定义这些数据之间的联系。对概念模完整性要求,定义这些数据之间的联系。对概念模完整性要求,定义这些数据之间的联系。对概念模式的描述,式的描述,式的描述,式的描述,DBMSDBMS一般都提供有相应的模式描述语一般都提供有相应的模式描述语一般都提供有相应的模式描述语一般都提供有相应的模式描述语言(模式言(模式言(模式言(模式DDLDDL)来定义模式。)来定义模式。)来定义模式。)来定义模式。 (2)外模式)外模式 外模式也称子模式或用户模式。它是数外模式也称子模式或用户模式。它是数据库用户所见到和使用的局部数据逻辑结构据库用户所见到和使用的局部数据逻

27、辑结构的描述,是数据库用户的数据视图,是与某的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。一应用有关的数据的逻辑表示。 一个概念模式可以有若干个外模式,每个用户一个概念模式可以有若干个外模式,每个用户一个概念模式可以有若干个外模式,每个用户一个概念模式可以有若干个外模式,每个用户只关心与他有关的外模式,这样不仅可以屏蔽大量只关心与他有关的外模式,这样不仅可以屏蔽大量只关心与他有关的外模式,这样不仅可以屏蔽大量只关心与他有关的外模式,这样不仅可以屏蔽大量无关信息而且有利于数据库中数据的保密和保护。无关信息而且有利于数据库中数据的保密和保护。无关信息而且有利于数据库中数据的保密

28、和保护。无关信息而且有利于数据库中数据的保密和保护。对外模式的描述,对外模式的描述,对外模式的描述,对外模式的描述, DBMSDBMS一般都提供有相应的外模一般都提供有相应的外模一般都提供有相应的外模一般都提供有相应的外模式定义语言(外模式式定义语言(外模式式定义语言(外模式式定义语言(外模式DDLDDL)来定义外模式。)来定义外模式。)来定义外模式。)来定义外模式。 (3)内模式)内模式 内模式也称存储模式或物理模式,它是内模式也称存储模式或物理模式,它是数据库物理存储结构和物理存储方法的描述,数据库物理存储结构和物理存储方法的描述,是数据在存储介质上的保存方式。例如,数是数据在存储介质上的

29、保存方式。例如,数据的存储方式是顺序存储、还是按照据的存储方式是顺序存储、还是按照 B 树结树结构存储等等。内模式对一般用户是透明的,构存储等等。内模式对一般用户是透明的,但它的设计直接影响数据库的性能。但它的设计直接影响数据库的性能。 对内模式的描述,对内模式的描述,DBMS一般都提供有一般都提供有相应的内模式定义语言(内模式相应的内模式定义语言(内模式DDL)来定)来定义内模式。一个数据库只有一个内模式。义内模式。一个数据库只有一个内模式。 2 2数据库系统的二级映射数据库系统的二级映射数据库系统的二级映射数据库系统的二级映射 数据库系统的三级模式之间的联系是通过二级映数据库系统的三级模式

30、之间的联系是通过二级映数据库系统的三级模式之间的联系是通过二级映数据库系统的三级模式之间的联系是通过二级映射来实现的,当然实际的映射转换工作是由射来实现的,当然实际的映射转换工作是由射来实现的,当然实际的映射转换工作是由射来实现的,当然实际的映射转换工作是由DBMSDBMS来完来完来完来完成的。成的。成的。成的。(1 1)外模式到概念模式的映射)外模式到概念模式的映射)外模式到概念模式的映射)外模式到概念模式的映射 外模式到概念模式的映射(即外模式概念模外模式到概念模式的映射(即外模式概念模外模式到概念模式的映射(即外模式概念模外模式到概念模式的映射(即外模式概念模式映射)定义了外模式与概念模

31、式之间的对应关系。式映射)定义了外模式与概念模式之间的对应关系。式映射)定义了外模式与概念模式之间的对应关系。式映射)定义了外模式与概念模式之间的对应关系。外模式是用户的局部模式而概念模式是全局模式。外模式是用户的局部模式而概念模式是全局模式。外模式是用户的局部模式而概念模式是全局模式。外模式是用户的局部模式而概念模式是全局模式。当概念模式改变时,由数据库管理员对各个外模式当概念模式改变时,由数据库管理员对各个外模式当概念模式改变时,由数据库管理员对各个外模式当概念模式改变时,由数据库管理员对各个外模式概念模式映射作相应改变,可以使外模式保持不概念模式映射作相应改变,可以使外模式保持不概念模式

32、映射作相应改变,可以使外模式保持不概念模式映射作相应改变,可以使外模式保持不变,从而应用程序不必修改,保证了数据的逻辑独变,从而应用程序不必修改,保证了数据的逻辑独变,从而应用程序不必修改,保证了数据的逻辑独变,从而应用程序不必修改,保证了数据的逻辑独立性。立性。立性。立性。 (2)概念模式到内模式的映射)概念模式到内模式的映射 概概念念模模式式到到内内模模式式的的映映射射(即即概概念念模模式式内内模模式式映映射射)定定义义了了数数据据全全局局逻逻辑辑结结构构与物理存储结构之间的对应关系。与物理存储结构之间的对应关系。 当当数数据据库库的的存存储储结结构构改改变变时时(例例如如换换了了另另一一

33、个个磁磁盘盘来来存存储储该该数数据据库库),由由数数据据库库管管理理员员对对概概念念模模式式内内模模式式映映射射作作相相应应改改变变,可可以以使使概概念念模模式式保保持持不不变变,从从而而保保证证了数据的物理独立性。了数据的物理独立性。1.3 1.3 数据模型数据模型 数据是现实世界符号的抽象,而数据模型则是数数据是现实世界符号的抽象,而数据模型则是数据特征的抽象。数据模型所描述的内容包括三个方面,据特征的抽象。数据模型所描述的内容包括三个方面,即是数据结构、数据操作与数据约束条件。即是数据结构、数据操作与数据约束条件。 数据模型是从现实世界到机器世界的一个中间层数据模型是从现实世界到机器世界

34、的一个中间层次。现实世界的事物反映到人的大恼中,人们把这些次。现实世界的事物反映到人的大恼中,人们把这些事物抽象为一种既不依赖于具体的计算机系统又不依事物抽象为一种既不依赖于具体的计算机系统又不依赖于具体的赖于具体的DBMS的概念模型,然后,再把该概念模的概念模型,然后,再把该概念模型转换为计算机中某个型转换为计算机中某个 DBMS 所支持的数据模型。所支持的数据模型。数据模型包括如下三类:数据模型包括如下三类:1概念数据模型概念数据模型 概概念念数数据据模模型型是是面面向向数数据据库库用用户户的的现现实实世世界界的的数数据据模模型型,也也简简称称概概念念模模型型。概概念念模模型型主主要要用用

35、来来描描述述现现实实世世界界的的概概念念化化结结构构。它它使使数数据据库库的的设设计计人人员员在在设设计计的的初初始始阶阶段段,摆摆脱脱计计算算机机系系统统及及DBMS的的具具体体技技术术问问题题,集集中中精精力力分分析析数数据据以以及及数数据据之之间间的的联联系系等等。概概念念模模型型与与具具体体的的计计算算机机平平台台无关、与具体的无关、与具体的 DBMS 无关。无关。 2逻辑数据模型逻辑数据模型 逻辑数据模型也简称数据模型。逻辑数据模型主要逻辑数据模型也简称数据模型。逻辑数据模型主要用来描述数据库中数据的表示方法和数据库结构的实现用来描述数据库中数据的表示方法和数据库结构的实现方法。它是

36、计算机实际支持的数据模型,是与具体的方法。它是计算机实际支持的数据模型,是与具体的DBMS有关的数据模型。它包括层次数据模型、网状数有关的数据模型。它包括层次数据模型、网状数据模型、关系数据模型、面向对象数据模型等。据模型、关系数据模型、面向对象数据模型等。 3物理数据模型物理数据模型 物理数据模型也简称物理模型,它是一种面向计算物理数据模型也简称物理模型,它是一种面向计算机物理表示的模型。物理数据模型给出了数据模型在计机物理表示的模型。物理数据模型给出了数据模型在计算机上物理结构的表示,它是描述数据在储存介质上的算机上物理结构的表示,它是描述数据在储存介质上的组织结构的数据模型。组织结构的数

37、据模型。 1.3.1.3.1 1 概念模型概念模型E-RE-R模型模型 概念模型是一种面向客观世界、面向用户的模概念模型是一种面向客观世界、面向用户的模型。概念模型也称信息模型。概念模型是按用户的型。概念模型也称信息模型。概念模型是按用户的观点,从概念上描述客观世界复杂事物的结构以及观点,从概念上描述客观世界复杂事物的结构以及事物之间的内在联系,而不管事物和联系如何在数事物之间的内在联系,而不管事物和联系如何在数据库中存储,即是概念模型与具体的数据库管理系据库中存储,即是概念模型与具体的数据库管理系统(统(DBMS)无关,与具体的计算机平台无关。)无关,与具体的计算机平台无关。 概念模型是整个

38、数据模型的基础。概念模型是整个数据模型的基础。 在此,仅介绍最广泛使用的概念模型设计方法在此,仅介绍最广泛使用的概念模型设计方法E-R方法设计概念模型的有关内容。方法设计概念模型的有关内容。1概念模型中的基本概念概念模型中的基本概念(1)实体)实体 客观存在并可相互区别的事物称为实体。实体可以是客观存在并可相互区别的事物称为实体。实体可以是具体的人、事、物,也可以是抽象的概念或联系。例如具体的人、事、物,也可以是抽象的概念或联系。例如一个教师、一门课、一本书、一次作业、一次考试等。一个教师、一门课、一本书、一次作业、一次考试等。(2)属性)属性 描述实体的特性称为属性。一个实体可以由若干个描述

39、实体的特性称为属性。一个实体可以由若干个属性来刻画,如一个学生实体有学号、姓名、性别、出属性来刻画,如一个学生实体有学号、姓名、性别、出生日期等方面的属性。属性有属性名和属性值,属性的生日期等方面的属性。属性有属性名和属性值,属性的具体取值称为属性值。例如,对某一学生的具体取值称为属性值。例如,对某一学生的“性别性别”属属性取值性取值“女女”,其中,其中“性别性别”为属性名,为属性名,“女女”为属性为属性值。值。(3)关键字)关键字 能够唯一标识实体的属性或属性的组合称为关键能够唯一标识实体的属性或属性的组合称为关键字。如学生的学号可以作为学生实体的关键字,但学字。如学生的学号可以作为学生实体

40、的关键字,但学生的姓名有可能有重名,因此不能作为学生实体的关生的姓名有可能有重名,因此不能作为学生实体的关键字。键字。(4)域)域 属性的取值范围称为该属性的域。例如,学号的属性的取值范围称为该属性的域。例如,学号的域为域为8个数字字符串集合,性别的域为个数字字符串集合,性别的域为“男男”和和“女女”。(5)实体型)实体型 属性的集合表示一个实体的类型,称为实体型。属性的集合表示一个实体的类型,称为实体型。例如,学生(学号,姓名,性别,出生日期)就是例如,学生(学号,姓名,性别,出生日期)就是一个实体型。一个实体型。 属性值的集合表示一个实体。例如,属性值的集属性值的集合表示一个实体。例如,属

41、性值的集合(合(02091001,李楠,女,李楠,女,1986-01-12)就是代表)就是代表一个具体的学生。一个具体的学生。(6)实体集)实体集 同类型的实体的集合称为实体集。例如,对于同类型的实体的集合称为实体集。例如,对于“学生学生”实体来说,全体学生就是一个实体集。实体来说,全体学生就是一个实体集。2、两个实体之间的联系、两个实体之间的联系 现实世界中事物内部以及事物之间是有联现实世界中事物内部以及事物之间是有联系的,在概念模型中反映为实体内部的联系和系的,在概念模型中反映为实体内部的联系和实体之间的联系。实体之间的联系。 实体内部的联系通常是指组成实体的各属实体内部的联系通常是指组成

42、实体的各属性之间的联系,而实体之间的联系通常是指不性之间的联系,而实体之间的联系通常是指不同实体集之间的联系。同实体集之间的联系。 两个实体之间的联系可分为如下三种类型:两个实体之间的联系可分为如下三种类型: (1)一对一联系()一对一联系(1 : 1) 实体集实体集 A 中的一个实体至多与实体集中的一个实体至多与实体集 B 中的一个实体相对应,反之亦然,则称实体集中的一个实体相对应,反之亦然,则称实体集 A 与实体集与实体集 B 为一对一的联系,记作为一对一的联系,记作 1 : 1。 例如,一个学校只有一个校长,一个校长例如,一个学校只有一个校长,一个校长只能管理一个学校。只能管理一个学校。

43、(2)一对多联系()一对多联系(1 : n) 如果对于实体集如果对于实体集 A 中的每一个实体,实中的每一个实体,实体集体集 B 中有多个实体与之对应,反之,对于实中有多个实体与之对应,反之,对于实体集体集 B 中的每一个实体,实体集中的每一个实体,实体集 A 中至多只中至多只有一个实体与之对应,则称实体集有一个实体与之对应,则称实体集 A 与实体集与实体集 B 之间为一对多联系,记为之间为一对多联系,记为 1 : n。 例如,学校的一个系有多个专业,而一个例如,学校的一个系有多个专业,而一个专业只属于一个系。专业只属于一个系。 (3)多对多联系()多对多联系(m : n) 如果对于实体集如果

44、对于实体集 A 中的每一个实体,实体中的每一个实体,实体集集 B 中有多个实体与之对应,反之,对于实体中有多个实体与之对应,反之,对于实体集集 B 中的每一个实体,实体集中的每一个实体,实体集 A中也有多个实中也有多个实体与之对应,则称实体集体与之对应,则称实体集 A与实体集与实体集 B 之间为之间为多对多联系,记为多对多联系,记为 m : n。 例如,一个学生可以选修多门课程,一门课例如,一个学生可以选修多门课程,一门课程可以被多名学生选修。程可以被多名学生选修。 3、E-R方法方法 E-R方法(即实体方法(即实体-联系方法)是最广泛使用的概念联系方法)是最广泛使用的概念数据模型设计方法,该

45、方法用数据模型设计方法,该方法用 E-R 图来描述现实世界的图来描述现实世界的概念数据模型。概念数据模型。 E-R方法描述说明如下:方法描述说明如下:(1)实体(型)实体(型) 实体(型)用矩形表示,矩形框内写上实体名称。实体(型)用矩形表示,矩形框内写上实体名称。(2)属性)属性 属性用椭圆形表示,椭圆内写明属性名,并用连线属性用椭圆形表示,椭圆内写明属性名,并用连线将其与相应的实体型连接起来。将其与相应的实体型连接起来。(3)联系)联系 联系用菱形表示,菱形框内写明联系名,并用连线联系用菱形表示,菱形框内写明联系名,并用连线分别与有关实体连接起来,同时在连线旁标上联系的类分别与有关实体连接

46、起来,同时在连线旁标上联系的类型(如型(如1 : 1、1 : n 或或 m : n)。)。图图 1-3 E-R 图示例图示例 1.3.3 1.3.3 逻辑数据模型逻辑数据模型 逻辑数据模型分为:层次模型、网状模逻辑数据模型分为:层次模型、网状模型、关系模型和面向对象模型。型、关系模型和面向对象模型。 1. 1. 层次数据模型层次数据模型 层层次次数数据据模模型型(简简称称层层次次模模型型)采采用用树树型型结结构构来来表表示示实实体体和和实实体体间间的的联联系系。如如图图1-4所所示示是是层层次次模模型型的的一一个个例例子子,在在该该例例子子中中树树型型反反映映出出整整个个系系统统的的数数据据结

47、结构构和和它它们们之之间间的的关关系系。在在层层次次模模型型中中,只只有有一一个个根根结结点点,其其余余结结点点只只有有一一个个父父结结点点,每每个个结结点点是是一一个个记记录录,每每个个记记录录由由若若干干数数据据项项组组成成。记记录录之之间间使用带箭头的连线连接以反映它们之间的关系。使用带箭头的连线连接以反映它们之间的关系。2. 2. 网状数据模型网状数据模型 网状数据模型(简称网状模型)可以看成是层次网状数据模型(简称网状模型)可以看成是层次模型的一种扩展。一般来说,满足如下基本条件的基模型的一种扩展。一般来说,满足如下基本条件的基本层次联系的集合称为网状模型:本层次联系的集合称为网状模

48、型: (1)可以有一个以上的结点无父结点;)可以有一个以上的结点无父结点; (2)允许结点有多个父结点;)允许结点有多个父结点; (3)结点之间允许有两种或两种以上的联系。)结点之间允许有两种或两种以上的联系。 如图如图1-5所示是网状模型的一个例子。所示是网状模型的一个例子。3. 3. 关系数据模型关系数据模型 关系数据模型(简称关系模型)以二维表的方式关系数据模型(简称关系模型)以二维表的方式(如表(如表1-1所示)组织数据。所示)组织数据。 关系模型建立在严格的数学概念基础之上,自从关系模型建立在严格的数学概念基础之上,自从出现后发展迅速。出现后发展迅速。20世纪世纪80年代以来,几乎所

49、有的数年代以来,几乎所有的数据库系统都是建立在关系模型之上。据库系统都是建立在关系模型之上。 基于关系模型建立的数据库系统则称为关系数据基于关系模型建立的数据库系统则称为关系数据库系统。库系统。4 4. . 面向对象数据模型面向对象数据模型 面向对象数据模型(简称面向对象模型)是用面面向对象数据模型(简称面向对象模型)是用面向对象的观点来描述现实世界实体的逻辑组织、实体向对象的观点来描述现实世界实体的逻辑组织、实体之间的限制和联系等的模型。之间的限制和联系等的模型。 在面向对象数据模型中,所有现实世界中的实体在面向对象数据模型中,所有现实世界中的实体都可看成对象。一个对象包含若干属性,用于描述

50、对都可看成对象。一个对象包含若干属性,用于描述对象的特性。属性也是对象,它又可包含其他对象作为象的特性。属性也是对象,它又可包含其他对象作为其属性。这种递归引用对象的过程可以继续下去,从其属性。这种递归引用对象的过程可以继续下去,从而组成各种复杂的对象,而且,同一个对象可以被多而组成各种复杂的对象,而且,同一个对象可以被多个对象所引用。个对象所引用。 除了属性之外,对象还包含若干方法,用于描述除了属性之外,对象还包含若干方法,用于描述对象的行为。方法又称为操作,它可以改变对象的状对象的行为。方法又称为操作,它可以改变对象的状态。态。1.3.1.3.3 3 物理数据模型物理数据模型 物理数据模型

51、(简称物理模型)是一种面向计算机物理数据模型(简称物理模型)是一种面向计算机物理表示的模型。物理数据模型给出了逻辑数据模型在物理表示的模型。物理数据模型给出了逻辑数据模型在计算机上物理结构的表示,它是描述数据在储存介质上计算机上物理结构的表示,它是描述数据在储存介质上的组织结构的数据模型,它不但与具体的的组织结构的数据模型,它不但与具体的DBMS有关,有关,而且还与操作系统和硬件有关。每一种逻辑数据模型在而且还与操作系统和硬件有关。每一种逻辑数据模型在实现时都有与其相对应的物理数据模型。实现时都有与其相对应的物理数据模型。 DBMS为了保证其独立性与可移植性,大部分物理为了保证其独立性与可移植

52、性,大部分物理数据模型的实现工作是由系统自动完成,而设计者只需数据模型的实现工作是由系统自动完成,而设计者只需设计索引等特殊结构。设计索引等特殊结构。 1.4 1.4 关系数据库关系数据库 关系数据库是基于关系模型的数据库。关系数据库是基于关系模型的数据库。 Access 就是一个关系数据库管理系统,就是一个关系数据库管理系统,使用它可以创建某一具体应用的使用它可以创建某一具体应用的 Access 关系关系数据库。数据库。 1.4.1 1.4.1 关系模型的基本术语关系模型的基本术语1关系关系 一个关系就是一个二维表,每一个关系都有一个关系名。一个关系就是一个二维表,每一个关系都有一个关系名。

53、在关系数据库管理系统中,通常把二维表称为数据表,也简称在关系数据库管理系统中,通常把二维表称为数据表,也简称为表。二维表中含有几列就称为几元关系。为表。二维表中含有几列就称为几元关系。 对关系的描述称为关系模式,一个关系模式对应于一个关对关系的描述称为关系模式,一个关系模式对应于一个关系的结构。系的结构。关系模式的一般格式:关系模式的一般格式: 关系名(属性名关系名(属性名1,属性名,属性名2,属性名,属性名n) 在在Access中,关系模式表示为表模式,它对应于一个表的中,关系模式表示为表模式,它对应于一个表的结构。即:结构。即: 表名(字段名表名(字段名1,字段名,字段名2,字段名,字段名

54、n) 例如,例如,“学系学系”表的关系模式为:表的关系模式为: 学系(学系代码,学系名称,办公电话,学系简介)学系(学系代码,学系名称,办公电话,学系简介) 2属性属性 二维表中的一列称为一个属性,每一列二维表中的一列称为一个属性,每一列都有一个属性名。在都有一个属性名。在Access中,表中的一列中,表中的一列称为字段,属性名也称为字段名。称为字段,属性名也称为字段名。 3元组元组 二维表中的从第二行开始的每一行称为二维表中的从第二行开始的每一行称为一个元组或记录。在一个元组或记录。在Access中元组称为记录。中元组称为记录。 “关系关系”是是“元组元组”的集合,的集合,“元组元组”是是属

55、性值的集合,一个关系模型中的数据就是属性值的集合,一个关系模型中的数据就是这样逐行逐列组织起来的。这样逐行逐列组织起来的。 。关系术语(续)关系术语(续)4分量分量 元组中的一个属性值称为分量。关系模元组中的一个属性值称为分量。关系模型要求关系的每一个分量必须是一个不可分型要求关系的每一个分量必须是一个不可分的数据项,即不允许表中还有表。的数据项,即不允许表中还有表。 5域域 属性的取值范围称为域,即不同的元组属性的取值范围称为域,即不同的元组对同一属性的取值所限定的范围。例如,性对同一属性的取值所限定的范围。例如,性别只能从别只能从“男男”、“女女”两个汉字中取其中两个汉字中取其中一个汉字。

56、一个汉字。 关系术语(续)关系术语(续)6候选关键字候选关键字 关系中的某个属性组(一个属性或几个关系中的某个属性组(一个属性或几个属性的组合)可以唯一标识一个元组,这个属性的组合)可以唯一标识一个元组,这个属性组称为候选关键字。属性组称为候选关键字。 。7主关键字(简称主键)主关键字(简称主键) 一个关系中可以有多个侯选关键字,选一个关系中可以有多个侯选关键字,选择其中一个作为主关键字,也称为主键或主择其中一个作为主关键字,也称为主键或主码。例如,在码。例如,在“学生学生”表中,由于每个学号表中,由于每个学号是唯一的,故可以设置是唯一的,故可以设置“学号学号”字段为主键。字段为主键。 关系术

57、语(续)关系术语(续)8外部关键字(简称外键)外部关键字(简称外键) 如果一个属性组(一个属性或几个属性如果一个属性组(一个属性或几个属性的组合)不是所在关系的主关键字,而是另的组合)不是所在关系的主关键字,而是另一个关系的主关键字或候选关键字,则该属一个关系的主关键字或候选关键字,则该属性组称为外部关键字,也称为外键或外码。性组称为外部关键字,也称为外键或外码。9主属性主属性 包含在任一候选关键字中的属性称包含在任一候选关键字中的属性称为主属性。为主属性。关系术语(续)关系术语(续)1.4.1.4.2 2 关系的性质关系的性质 关系是一个二维表,但并不是所有的二维表都是关系。关系是一个二维表

58、,但并不是所有的二维表都是关系。关系应具有以下性质:关系应具有以下性质:(1)每一列中的分量是同一类型的数据,来自同一个域。)每一列中的分量是同一类型的数据,来自同一个域。(2)不同的列要给予不同的属性名。)不同的列要给予不同的属性名。(3)列的顺序无所谓,即列的次序可以任意交换。)列的顺序无所谓,即列的次序可以任意交换。(4)任意两个元组不能完全相同。)任意两个元组不能完全相同。(5)行的顺序无所谓,即行的次序可以任意交换。)行的顺序无所谓,即行的次序可以任意交换。(6)每一个分量都必须是不可再分的数据项。)每一个分量都必须是不可再分的数据项。 由上述可知,二维表中的每一行都是唯一的,而且所

59、有由上述可知,二维表中的每一行都是唯一的,而且所有行都具有相同类型的字段。行都具有相同类型的字段。1.4.3 1.4.3 关系完整性约束关系完整性约束 关系模型允许定义三种完整性约束,即是实体关系模型允许定义三种完整性约束,即是实体完整性约束、参照完整性和用户定义完整性约束。完整性约束、参照完整性和用户定义完整性约束。 其中实体完整性约束和参照完整性约束统称为其中实体完整性约束和参照完整性约束统称为关系完整性约束,是关系模型必须满足的完整性的关系完整性约束,是关系模型必须满足的完整性的约束条件,它由关系数据库系统自动支持。用户定约束条件,它由关系数据库系统自动支持。用户定义完整性约束是应用领域

60、需要遵循的约束条件。义完整性约束是应用领域需要遵循的约束条件。1 1实体完整性约束实体完整性约束 由于每个关系的主键是惟一决定元组的,故实体完由于每个关系的主键是惟一决定元组的,故实体完整性约束要求关系的主键不能为空值,组成主键的所有整性约束要求关系的主键不能为空值,组成主键的所有属性都不能取空值。属性都不能取空值。 例如,有如下例如,有如下“学生学生”关系:关系: 学生(学号,姓名,性别,出生日期)学生(学号,姓名,性别,出生日期)其中学号是主键,因此,学号不能为空值。其中学号是主键,因此,学号不能为空值。 例如,有如下例如,有如下“修课成绩修课成绩”关系:关系: 修课成绩(学年度,学期,学

61、号,课程代码,课程修课成绩(学年度,学期,学号,课程代码,课程类别,成绩性质,成绩)类别,成绩性质,成绩)其中学年度、学期、学号和课程代码和共同构成主键,其中学年度、学期、学号和课程代码和共同构成主键,因此,学年度、学期、学号和课程代码都不能为空值。因此,学年度、学期、学号和课程代码都不能为空值。2 2参照完整性约束参照完整性约束 参照完整性约束是关系之间相关联的基本参照完整性约束是关系之间相关联的基本约束,它不允许关系引用不存在的元组,即在约束,它不允许关系引用不存在的元组,即在关系中的外键取值只能是关联关系中的某个主关系中的外键取值只能是关联关系中的某个主键值或者为空值。键值或者为空值。

62、例如:学系代码是例如:学系代码是“学系学系”关系的主键、关系的主键、“专业专业”关系的外键。关系的外键。“专业专业”关系中的学系关系中的学系代码必须是代码必须是“学系学系”关系中一个存在的值,或关系中一个存在的值,或者是空值。者是空值。 3 3用户定义的完整性约束用户定义的完整性约束 用户定义的完整性约束是针对具体数据环境用户定义的完整性约束是针对具体数据环境与应用环境由用户具体设置的约束,它反映了具与应用环境由用户具体设置的约束,它反映了具体应用中数据的语义要求,它的作用就是要保证体应用中数据的语义要求,它的作用就是要保证数据库中数据的正确性。数据库中数据的正确性。 例如,限定某属性的取值范

63、围,学生成绩的例如,限定某属性的取值范围,学生成绩的取值必须在取值必须在 0,100 范围。范围。 1.4.4 1.4.4 关系规范化关系规范化 在关系数据库中,如果关系模式没有设计好,就在关系数据库中,如果关系模式没有设计好,就会出现数据冗余、数据更新异常、数据删除异常、数会出现数据冗余、数据更新异常、数据删除异常、数据插入异常等问题。据插入异常等问题。 关系模式的优良程度直接影响数据库中的数据完关系模式的优良程度直接影响数据库中的数据完整性等方面的性能。整性等方面的性能。 关系规范化就是将结构复杂的关系模式分解成结关系规范化就是将结构复杂的关系模式分解成结构简单的关系模式,从而使一个关系模

64、式描述一个实构简单的关系模式,从而使一个关系模式描述一个实体或实体间的一种联系,以达到概念的单一化。体或实体间的一种联系,以达到概念的单一化。 关系规范化目的就是要把不好的关系模式转变为关系规范化目的就是要把不好的关系模式转变为好的关系模式。好的关系模式。 把关系数据库的规范化过程中为不同程度的规范把关系数据库的规范化过程中为不同程度的规范化要求设立的不同标准称为范式。化要求设立的不同标准称为范式。 由于规范化的程度不同,就产生了不同的范式,由于规范化的程度不同,就产生了不同的范式,如第一范式、第二范式、第三范式、如第一范式、第二范式、第三范式、BCNF范式、第范式、第四范式、第五范式等。每种

65、范式都规定了一些限制约四范式、第五范式等。每种范式都规定了一些限制约束条件。束条件。 第一范式(第一范式(1NF)是最基本的规范形式,即在关)是最基本的规范形式,即在关系中每个属性都必须是不可再分割的数据项。系中每个属性都必须是不可再分割的数据项。 在关系数据库中,任何一个关系模式都必须满在关系数据库中,任何一个关系模式都必须满足第一范式,即表中的每个字段都是不可再分割的数足第一范式,即表中的每个字段都是不可再分割的数据项,也就是说,表中不能再包含表。据项,也就是说,表中不能再包含表。 其他级别的范式在此不作详述。其他级别的范式在此不作详述。 1.5 1.5 关系运算关系运算 关系的基本运算有

66、两类,一类是传统的集关系的基本运算有两类,一类是传统的集合运算(包括并、交、差和广义笛卡儿积等运合运算(包括并、交、差和广义笛卡儿积等运算),另一类是专门的关系运算(包括选择、算),另一类是专门的关系运算(包括选择、投影、联接和除等运算)。投影、联接和除等运算)。 关系基本运算的结果也是一个关系。关系基本运算的结果也是一个关系。 1.5.1 1.5.1 传统的集合运算传统的集合运算 传统的集合运算包括并、交、差和广义笛传统的集合运算包括并、交、差和广义笛卡儿积等运算。卡儿积等运算。 要进行并、交、差运算的两个关系必须具要进行并、交、差运算的两个关系必须具有相同的结构。对于有相同的结构。对于Ac

67、cess 数据库来说,即数据库来说,即是指两个表的结构要相同。是指两个表的结构要相同。 假定专业假定专业A(如表(如表1-2所示)和专业所示)和专业B(如(如表表1-3所示)两个关系结构相同。所示)两个关系结构相同。 专业专业代代码码专业专业名称名称学系代学系代码码 1001财务财务管理管理01 1002工商管理工商管理01 3002国国际际金融金融03专业专业代代码码专业专业名称名称学系代学系代码码 3002国国际际金融金融03 3003国国际贸际贸易易03 4001计计算数学算数学04表表1-3 专业专业A 表表1-4 专业专业B1 1并运算并运算 假设假设 R 和和 S是两个结构相同关系

68、,是两个结构相同关系,R 和和 S两个关系的并两个关系的并运算可以记作运算可以记作 R S,运算结果是将两个关系的所有元组组成,运算结果是将两个关系的所有元组组成一个新的关系,若有完全相同的元组,只留下一个。一个新的关系,若有完全相同的元组,只留下一个。例例1-1专业专业A 专业专业B 的并运算结果如表的并运算结果如表1-4 所示。所示。 表表1-4 专业专业A 专业专业B的并运算结果的并运算结果 专业专业代代码码专业专业名称名称学系代学系代码码1001财务财务管理管理011002工商管理工商管理013002国国际际金融金融033003国国际贸际贸易易034001计计算数学算数学042 2交运

69、算交运算 假设假设 R 和和 S是两个结构相同关系,是两个结构相同关系,R 和和 S两个关两个关系的交运算可以记作系的交运算可以记作RS,运算结果是两个关系中公,运算结果是两个关系中公共元组组成一个新的关系。共元组组成一个新的关系。例例1-2专业专业A 专业专业B 的交运算结果如表的交运算结果如表1-5所示。所示。 专业专业代代码码专业专业名称名称学系代学系代码码3002国国际际金融金融03表表1-5 专业专业A 专业专业B的交运算结果的交运算结果 3 3差运算差运算 假设假设 R 和和 S是两个结构相同关系,是两个结构相同关系,R 和和 S两个关两个关系的差运算可以记作系的差运算可以记作RS

70、,运算结果是由属于,运算结果是由属于R,但,但不属于不属于S的元组组成一个新的关系。的元组组成一个新的关系。 例例1-3专业专业A 专业专业B 的差运算结果如表的差运算结果如表1-6所示。所示。专业专业代代码码专业专业名称名称学系代学系代码码1001财务财务管理管理011002工商管理工商管理01表表1-6 专业专业A 专业专业B的差运算结果的差运算结果 4 4集合的广义笛卡儿积运算集合的广义笛卡儿积运算 设设 R 和和 S 是两个关系,如果是两个关系,如果 R 是是 m 元关系,有元关系,有 i 个元组,个元组,S 是是 n 元关系,有元关系,有 j 个元组,则笛卡儿积个元组,则笛卡儿积 R

71、S 是一个是一个 m+n 元关系,有元关系,有 ij 个元组。个元组。 例例1-4学生学生A(表(表1-7)课程课程A(表(表1-8)的笛)的笛卡儿积运算结果如表卡儿积运算结果如表1-9所示。所示。表表1-7 学生学生A表表1-8 课课程程A学号学号姓名姓名性性别别06031001王大山王大山男男06031002李琳李琳女女06061001周全周全男男课课程代程代码码课课程名称程名称学分学分3002大学大学语语文文33003大学英大学英语语44001高等数学高等数学4学号学号姓名姓名性性别别课课程代程代码码课课程名称程名称学分学分06031001王大山王大山男男3002大学大学语语文文3060

72、31001王大山王大山男男3003大学英大学英语语406031001王大山王大山男男4001高等数学高等数学406031002李琳李琳女女3002大学大学语语文文306031002李琳李琳女女3003大学英大学英语语406031002李琳李琳女女4001高等数学高等数学406061001周全周全男男3002大学大学语语文文306061001周全周全男男3003大学英大学英语语406061001周全周全男男4001高等数学高等数学4表表1-9 学生学生A 课程课程A的笛卡儿积运算结果的笛卡儿积运算结果 1.5.2 1.5.2 专门的关系运算专门的关系运算 在关系代数中,有在关系代数中,有4种专门

73、的关系运种专门的关系运算,即选择、投影、联接和除运算。算,即选择、投影、联接和除运算。 1 1、选择、选择 选择运算是指从指定的关系中选择出满足指定选择运算是指从指定的关系中选择出满足指定条件的元组组成一个新关系。条件的元组组成一个新关系。 通常选择运算记作:通常选择运算记作: (R)其中,其中,是选择运算符,是选择运算符,R 是关系名。是关系名。 例例1-5在关系在关系 专业(专业代码,专业名称,学系代码)专业(专业代码,专业名称,学系代码)中,选取学系代码为中,选取学系代码为“02”的专业元组,可以记成:的专业元组,可以记成: 学系代码学系代码= 02 (专业)(专业)2 2、投影、投影

74、投影运算是指从指定关系中选取某些属性组成一个投影运算是指从指定关系中选取某些属性组成一个新关系。通常投影运算记作:新关系。通常投影运算记作: A(R)其中,其中,是投影运算符,是投影运算符,A是被投影的属性或属性组,是被投影的属性或属性组,R 是关系名。是关系名。 例例1-6在关系在关系 专业(专业代码,专业名称,学系代码)专业(专业代码,专业名称,学系代码)中,选取所有专业的专业名称、学系代码,可以记成:中,选取所有专业的专业名称、学系代码,可以记成: 专业名称专业名称,学系代码学系代码(专业)(专业)补充选择运算与补充选择运算与投影投影运算组合使用运算组合使用 例如,在关系例如,在关系 职

75、工(职工号,姓名,性别,年龄,职位,工资)职工(职工号,姓名,性别,年龄,职位,工资)中,选取所有工资中,选取所有工资1500元以上(含元以上(含1500)的女的职工)的女的职工的姓名,职位,工资。可以记成:的姓名,职位,工资。可以记成: 姓名,职位,工资姓名,职位,工资(工资工资=1500 and 性别性别= 女女 ( 职工职工 ) )例如,在关系例如,在关系 职工(职工号,姓名,性别,年龄,职位,工资)职工(职工号,姓名,性别,年龄,职位,工资)中,选取所有工资中,选取所有工资1500元以下(含元以下(含1500)或)或2500以上以上的职工的姓名,职位,工资。可以记成:的职工的姓名,职位

76、,工资。可以记成: 姓名,职位,工资姓名,职位,工资(工资工资2500 ( 职工职工 ) )3 3、联接运算、联接运算 联接运算用来联接相互之间有联系的两个或多个联接运算用来联接相互之间有联系的两个或多个关系,从而组成一个新的关系。关系,从而组成一个新的关系。 联接类型有内联接、自然联接、左外联接、右外联接类型有内联接、自然联接、左外联接、右外联接、全外联接等。其中最常用的联接是自然联接。联接、全外联接等。其中最常用的联接是自然联接。 自然联接是按照公共属性值相等的条件进行联接,自然联接是按照公共属性值相等的条件进行联接,并且消除重复属性。并且消除重复属性。 例例1-7将表将表1-10所示的所

77、示的“学生学生B”与表与表1-11所示所示的的“修课成绩修课成绩B”两个关系进行自然联接运算,其自两个关系进行自然联接运算,其自然联接运算的结果如表然联接运算的结果如表1-12所示。所示。 表表1-10 学生学生B表表1-11 学生修学生修课课B 学号学号姓名姓名性性别别06031001王大山王大山 男男06031002李琳李琳 女女06061001周全周全男男 学号学号课课程代程代码码课课程名称程名称成成绩绩06031001 3002大学大学语语文文 8506031001 3003大学英大学英语语 9306061001 4001高等数学高等数学 78学号学号姓名姓名性性别别课课程代程代码码课

78、课程名称程名称成成绩绩06031001王大山王大山男男3002大学大学语语文文8506031001王大山王大山男男3003大学英大学英语语9306061001周全周全男男4001高等数学高等数学78表表1-12 学生学生B 与修课成绩与修课成绩B 的自然联接结果的自然联接结果 4 4、除运算、除运算 关系关系 R与关系与关系 S的除法运算应满足的条件是:关的除法运算应满足的条件是:关系系 S 的属性全部包含在关系的属性全部包含在关系 R 中,关系中,关系 R 的一些属的一些属性不包含在关系性不包含在关系 S 中。关系中。关系 R与关系与关系 S的除法运算表的除法运算表示为示为 RS。除法运算的

79、结果也是关系,而且该关系中。除法运算的结果也是关系,而且该关系中的属性由的属性由 R 中除去中除去 S 中的属性之外的全部属性组成,中的属性之外的全部属性组成,元组由元组由 R 与与 S 中在所有相同属性上有相等值的那些元中在所有相同属性上有相等值的那些元组组成。组组成。 例例1-8将表将表1-13所示的所示的“学生修课学生修课”表与表表与表1-14所示的所示的“所有课程所有课程”表进行除运算,以找出已修所有表进行除运算,以找出已修所有修课程的学生,其除运算的结果如表修课程的学生,其除运算的结果如表1-15所示。所示。表表表表1-13 1-13 学生修课学生修课学生修课学生修课 表表表表1-1

80、4 1-14 所有课程所有课程所有课程所有课程学号学号课课程代程代码码姓名姓名课课程名称程名称060310013002王大山王大山大学大学语语文文060310013003王大山王大山大学英大学英语语060310023002李琳李琳大学大学语语文文060310023003李琳李琳大学英大学英语语060310024001李琳李琳高等数学高等数学060610014001周全周全高等数学高等数学课课程代程代码码课课程名称程名称3002大学大学语语文文3003大学英大学英语语4001高等数学高等数学学号学号姓名姓名06031002李琳李琳表表1-15 学生修课学生修课所有课程的除运算结果所有课程的除运算

81、结果1.6 1.6 数据库设计简述数据库设计简述 由于数据库具有数据量厐大(许多称为海由于数据库具有数据量厐大(许多称为海量级)、数据保存时间长、数据关联比较复杂,量级)、数据保存时间长、数据关联比较复杂,应用多样化等特点,因此,设计出一个结构合应用多样化等特点,因此,设计出一个结构合理、满足实际应用需求的数据库就至关重要。理、满足实际应用需求的数据库就至关重要。 1.6.1 1.6.1 数据库应用开发数据库应用开发 数据库应用系统的设计目前一般大多采用生命周数据库应用系统的设计目前一般大多采用生命周期法,即是将整个数据库应用系统的开发分解成目期法,即是将整个数据库应用系统的开发分解成目标独立

82、的若干阶段,即分为需求分析阶段、概念设标独立的若干阶段,即分为需求分析阶段、概念设计阶段、逻辑设计阶段、物理设计阶段、编码阶段、计阶段、逻辑设计阶段、物理设计阶段、编码阶段、测试阶段、运行阶段、维护阶段等。测试阶段、运行阶段、维护阶段等。 与数据库设计关系最密切的是上述几个阶段中的与数据库设计关系最密切的是上述几个阶段中的前四个阶段,即需求分析、概念设计、逻辑设计和前四个阶段,即需求分析、概念设计、逻辑设计和物理设计阶段,如图物理设计阶段,如图1-7所示。所示。 图图1-6 数据库设计阶段示意图数据库设计阶段示意图 1.6.2 1.6.2 数据库需求分析阶段数据库需求分析阶段1调查用户的需求调

83、查用户的需求 调查用户对数据库的各种要求,调查的重调查用户对数据库的各种要求,调查的重点是点是 “数据数据” 和和 “处理处理”。具体包括:。具体包括:(1)信息要求)信息要求 用户对数据库的信息要求是指用户需要从用户对数据库的信息要求是指用户需要从数据库中获得信息的内容与性质。数据库中获得信息的内容与性质。(2)处理要求)处理要求 用户对数据库的处理要求是指用户要完成用户对数据库的处理要求是指用户要完成什么处理功能。什么处理功能。(3)安全性和完整性的要求)安全性和完整性的要求2分析和表达用户的需求分析和表达用户的需求 分析和表达用户的需求,经常采用的方法有结构化分析和表达用户的需求,经常采

84、用的方法有结构化分析方法和面向对象的方法。分析方法和面向对象的方法。 结构化分析(结构化分析(Structured Analysis,简称,简称 SA 方法)方法)方法用自顶向下、逐层分解的方式分析系统。用数据流方法用自顶向下、逐层分解的方式分析系统。用数据流图(图(Data Flow Diagram,简记为,简记为 DFD)表达数据和处)表达数据和处理过程的关系,用数据字典(理过程的关系,用数据字典(Data Dictionary,简记为,简记为 DD)对系统中的数据的进行详尽描述。)对系统中的数据的进行详尽描述。 数据流图是描述数据处理过程的工具,是需求理解数据流图是描述数据处理过程的工具

85、,是需求理解的逻辑模型的图形表示,它直接支持系统的功能建模。的逻辑模型的图形表示,它直接支持系统的功能建模。1.6.3 1.6.3 数据库的概念设计阶段数据库的概念设计阶段 数据库概念设计的目的是分析数据间内在的语义关联,数据库概念设计的目的是分析数据间内在的语义关联,在此基础上建立一个数据的抽象模型在此基础上建立一个数据的抽象模型概念数据模型(简概念数据模型(简称概念模型)。概念模型是根据用户需求设计出来的,它不称概念模型)。概念模型是根据用户需求设计出来的,它不依赖于任何的数据库管理系统(依赖于任何的数据库管理系统(DBMS)。)。 概念模型设计的描述最常用的工具是概念模型设计的描述最常用

86、的工具是 E-R 图,具体步骤图,具体步骤如下:如下: (1)确定实体;)确定实体;(2)确定实体的属性;)确定实体的属性;(3)确定实体的主键;)确定实体的主键;(4)确定实体间的联系类型;)确定实体间的联系类型;(5)画出)画出ER图。图。E-R图也称为图也称为ER模型(实体联系模型)。模型(实体联系模型)。1.6.4 1.6.4 数据库的逻辑设计阶段数据库的逻辑设计阶段 数据库的逻辑设计主要是将概念数据模型转换成数据库的逻辑设计主要是将概念数据模型转换成为为DBMS所支持的逻辑数据模型。所支持的逻辑数据模型。 对于关系数据库管理系统(即对于关系数据库管理系统(即RDBMS)来说,)来说,

87、就是将概念数据模型转换成关系数据模型,即是将就是将概念数据模型转换成关系数据模型,即是将E-R图转换成指定的图转换成指定的RDBMS所支持的关系模式。所支持的关系模式。 在数据库的逻辑设计过程中,形成许多的关系模在数据库的逻辑设计过程中,形成许多的关系模式。如果关系模式没有设计好,就会出现数据冗余、式。如果关系模式没有设计好,就会出现数据冗余、数据更新异常、数据删除异常、数据插入异常等问题。数据更新异常、数据删除异常、数据插入异常等问题。故在设计过程中,要按照关系规范化的要求去设计出故在设计过程中,要按照关系规范化的要求去设计出好的关系模式。好的关系模式。1.6.5 1.6.5 数据库的物理设

88、计阶段数据库的物理设计阶段 数数据据库库的的物物理理设设计计是是设设计计数数据据库库的的存存储储结结构构和和物物理理实实现现方方法法。数数据据库库的的物物理理设设计计主主要要目目标标是是对对数数据据库库内内部部物物理理结结构构作作调调整整并并选选择择合合理理的的存存取取路路径径,以以提提高高数数据库访问速度以及有效利用存储空间。据库访问速度以及有效利用存储空间。 目目前前,在在关关系系数数据据库库中中已已大大量量屏屏蔽蔽了了内内部部物物理理结结构构,因因此此留留给给用用户户参参与与物物理理设设计计的的任任务务很很少少,一一般般的的关关系系数数据据库库管管理理系系统统留留给给用用户户参参与与物物理理设设计计的的内内容容大大致致有有索引设计、分区设计等。索引设计、分区设计等。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号