《第3章逻辑模型设计.ppt》由会员分享,可在线阅读,更多相关《第3章逻辑模型设计.ppt(28页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、SQL Server数据库技术及应用教程湖南省常宁市实验高级中学湖南省常宁市实验高级中学李开华李开华3.1 3.1 逻辑模型基础知识逻辑模型基础知识逻辑模型基础知识逻辑模型基础知识3.2 3.2 关系数据库理论关系数据库理论关系数据库理论关系数据库理论3.3 3.3 数据库逻辑结构设计数据库逻辑结构设计数据库逻辑结构设计数据库逻辑结构设计3.4 3.4 实训实训实训实训学籍管理系统逻辑模型设计学籍管理系统逻辑模型设计学籍管理系统逻辑模型设计学籍管理系统逻辑模型设计第第3章章 逻辑模型设计逻辑模型设计3.1.1 3.1.1 关系模型概述关系模型概述关系模型概述关系模型概述 1 1 1 1关系模型
2、的数据结构关系模型的数据结构关系模型的数据结构关系模型的数据结构 在在在在关关关关系系系系模模模模型型型型中中中中,数数数数据据据据的的的的逻逻逻逻辑辑辑辑结结结结构构构构是是是是一一一一张张张张二二二二维维维维表表表表,它它它它由由由由行行行行和列组成。和列组成。和列组成。和列组成。(1 1 1 1)关系模型中的主要术语)关系模型中的主要术语)关系模型中的主要术语)关系模型中的主要术语 关关关关系系系系(RelationRelationRelationRelation)。一一一一个个个个关关关关系系系系对对对对应应应应通通通通常常常常所所所所说说说说的的的的一一一一张张张张二二二二维维维维表
3、表表表。表表表表2-22-22-22-2就是一个关系。就是一个关系。就是一个关系。就是一个关系。元元元元组组组组(TupleTupleTupleTuple)。表表表表中中中中的的的的一一一一行行行行称称称称为为为为一一一一个个个个元元元元组组组组,许许许许多多多多系系系系统统统统中中中中把元组称为记录。把元组称为记录。把元组称为记录。把元组称为记录。属属属属性性性性(AttributeAttributeAttributeAttribute)。表表表表中中中中的的的的一一一一列列列列称称称称为为为为一一一一个个个个属属属属性性性性。一一一一个个个个表表表表中中中中往往往往往往往往会会会会有有有有
4、多多多多个个个个属属属属性性性性,为为为为了了了了区区区区分分分分属属属属性性性性,要要要要给给给给每每每每一一一一个个个个列列列列起起起起一一一一个个个个属性名。同一个表中的属性应具有不同的属性名。属性名。同一个表中的属性应具有不同的属性名。属性名。同一个表中的属性应具有不同的属性名。属性名。同一个表中的属性应具有不同的属性名。码码码码(KeyKeyKeyKey)。表表表表中中中中的的的的某某某某个个个个属属属属性性性性或或或或属属属属性性性性组组组组,它它它它们们们们的的的的值值值值可可可可以以以以惟惟惟惟一一一一地地地地确确确确定定定定一一一一个个个个元元元元组组组组,且且且且属属属属性
5、性性性组组组组中中中中不不不不含含含含多多多多余余余余的的的的属属属属性性性性,这这这这样样样样的的的的属属属属性或属性组称为关系的码。性或属性组称为关系的码。性或属性组称为关系的码。性或属性组称为关系的码。3.1 3.1 逻辑模型基础知识逻辑模型基础知识逻辑模型基础知识逻辑模型基础知识3.1.1 3.1.1 关系模型概述关系模型概述关系模型概述关系模型概述 域(域(域(域(DomainDomainDomainDomain)。属性的取值范围称为域。)。属性的取值范围称为域。)。属性的取值范围称为域。)。属性的取值范围称为域。分量(分量(分量(分量(elementelementelementel
6、ement)。元组中的一个属性值称为分量。)。元组中的一个属性值称为分量。)。元组中的一个属性值称为分量。)。元组中的一个属性值称为分量。关关关关系系系系模模模模式式式式(Relation Relation Relation Relation modemodemodemode)。关关关关系系系系的的的的型型型型称称称称为为为为关关关关系系系系模模模模式式式式,关系模式是对关系的描述。关系模式一般的表示是:关系模式是对关系的描述。关系模式一般的表示是:关系模式是对关系的描述。关系模式一般的表示是:关系模式是对关系的描述。关系模式一般的表示是:关系名(属性关系名(属性关系名(属性关系名(属性1 1
7、 1 1,属性,属性,属性,属性2 2 2 2,属性,属性,属性,属性n n n n)例如,学生学籍表关系可描述为:例如,学生学籍表关系可描述为:例如,学生学籍表关系可描述为:例如,学生学籍表关系可描述为:学生学籍(学号,姓名,性别,年龄,所在系)学生学籍(学号,姓名,性别,年龄,所在系)学生学籍(学号,姓名,性别,年龄,所在系)学生学籍(学号,姓名,性别,年龄,所在系)(2 2 2 2)关系模型中的数据全部用关系表示)关系模型中的数据全部用关系表示)关系模型中的数据全部用关系表示)关系模型中的数据全部用关系表示 在在在在关关关关系系系系模模模模型型型型中中中中,实实实实体体体体集集集集以以以
8、以及及及及实实实实体体体体间间间间的的的的联联联联系系系系都都都都是是是是用用用用关关关关系系系系来来来来表表表表示示示示。例例例例如如如如,关关关关系系系系模模模模型型型型中中中中,学学学学生生生生、课课课课程程程程、学学学学生生生生与与与与课课课课程程程程之之之之间间间间的的的的联系表示为:联系表示为:联系表示为:联系表示为:学生(学号,姓名,性别,年龄,所在系);学生(学号,姓名,性别,年龄,所在系);学生(学号,姓名,性别,年龄,所在系);学生(学号,姓名,性别,年龄,所在系);课程(课程号,课程名,先行课);课程(课程号,课程名,先行课);课程(课程号,课程名,先行课);课程(课程号
9、,课程名,先行课);选修(学号,课程号,成绩)选修(学号,课程号,成绩)选修(学号,课程号,成绩)选修(学号,课程号,成绩)3.1 3.1 逻辑模型基础知识逻辑模型基础知识逻辑模型基础知识逻辑模型基础知识3.1.1 3.1.1 关系模型概述关系模型概述关系模型概述关系模型概述 2 2 2 2关系操作和关系的完整性约束条件关系操作和关系的完整性约束条件关系操作和关系的完整性约束条件关系操作和关系的完整性约束条件 关关关关系系系系操操操操作作作作主主主主要要要要包包包包括括括括数数数数据据据据查查查查询询询询和和和和插插插插入入入入、删删删删除除除除、修修修修改改改改数数数数据据据据。关关关关系系
10、系系中中中中的的的的数数数数据据据据操操操操作作作作是是是是集集集集合合合合操操操操作作作作,无无无无论论论论操操操操作作作作的的的的原原原原始始始始数数数数据据据据、中中中中间间间间数数数数据据据据或或或或结结结结果果果果数数数数据据据据都都都都是是是是若若若若干干干干元元元元组组组组的的的的集集集集合合合合,而而而而不不不不是是是是单单单单记记记记录录录录的的的的操操操操作作作作方方方方式式式式。关关关关系系系系的的的的完完完完整整整整性性性性约约约约束束束束条条条条件件件件包包包包括括括括三三三三类类类类:实实实实体体体体完完完完整整整整性性性性、参参参参照照照照完整性和用户定义的完整性
11、。完整性和用户定义的完整性。完整性和用户定义的完整性。完整性和用户定义的完整性。3 3 3 3关系模型的存储结构关系模型的存储结构关系模型的存储结构关系模型的存储结构 在在在在关关关关系系系系数数数数据据据据库库库库的的的的物物物物理理理理组组组组织织织织中中中中,关关关关系系系系以以以以文文文文件件件件形形形形式式式式存存存存储储储储。一一一一些些些些小小小小型型型型的的的的关关关关系系系系数数数数据据据据库库库库管管管管理理理理系系系系统统统统(RDBMSRDBMSRDBMSRDBMS)采采采采用用用用直直直直接接接接利利利利用用用用操操操操作作作作系系系系统统统统文文文文件件件件的的的的
12、方方方方式式式式实实实实现现现现关关关关系系系系存存存存储储储储,一一一一个个个个关关关关系系系系对对对对应应应应一一一一个个个个数数数数据据据据文文文文件件件件。为为为为了了了了提提提提高高高高系系系系统统统统性性性性能能能能,许许许许多多多多RDBMSRDBMSRDBMSRDBMS采采采采用用用用自自自自己己己己设设设设计计计计的的的的文文文文件件件件结结结结构构构构、文文文文件件件件格格格格式式式式和和和和数数数数据据据据存存存存取取取取机机机机制制制制进进进进行行行行关关关关系系系系存存存存储储储储,以以以以保保保保证证证证数数数数据据据据的的的的物物物物理理理理独独独独立性和逻辑独立
13、性,更有效地保证数据的安全性和完整性。立性和逻辑独立性,更有效地保证数据的安全性和完整性。立性和逻辑独立性,更有效地保证数据的安全性和完整性。立性和逻辑独立性,更有效地保证数据的安全性和完整性。3.1 3.1 逻辑模型基础知识逻辑模型基础知识逻辑模型基础知识逻辑模型基础知识3.1.2 3.1.2 关系数据库的基本概念关系数据库的基本概念关系数据库的基本概念关系数据库的基本概念 1 1 1 1关系数据结构关系数据结构关系数据结构关系数据结构 (1 1 1 1)关系的数学定义)关系的数学定义)关系的数学定义)关系的数学定义 域域域域(DomainDomainDomainDomain)的的的的定定定
14、定义义义义。域域域域(DomainDomainDomainDomain)是是是是一一一一组组组组具具具具有有有有相相相相同同同同数据类型的值的集合。数据类型的值的集合。数据类型的值的集合。数据类型的值的集合。笛笛笛笛卡卡卡卡儿儿儿儿积积积积(Cartesian Cartesian Cartesian Cartesian ProductProductProductProduct)的的的的定定定定义义义义。给给给给定定定定一一一一组组组组域域域域D1D1D1D1,D2D2D2D2,DnDnDnDn,这这这这些些些些域域域域中中中中可可可可以以以以有有有有相相相相同同同同的的的的部部部部分分分分,则
15、则则则D1D1D1D1,D2D2D2D2,Dn Dn Dn Dn 的笛卡儿积(的笛卡儿积(的笛卡儿积(的笛卡儿积(Cartesian ProductCartesian ProductCartesian ProductCartesian Product)为:)为:)为:)为:D1D1D1D1D2D2D2D2Dn=Dn=Dn=Dn=(d1d1d1d1,d2d2d2d2,dndndndn)di Didi Didi Didi Di,i i i i1 1 1 1,2 2 2 2,nnnn 关关关关系系系系(RelationRelationRelationRelation)的的的的定定定定义义义义。D1
16、D1 D1 D1 D2 D2 D2 D2 DnDnDnDn的的的的子子子子集集集集称作在域称作在域称作在域称作在域D1D1D1D1,D2D2D2D2,DnDnDnDn上的关系,表示为:上的关系,表示为:上的关系,表示为:上的关系,表示为:R R R R(D1D1D1D1,D2D2D2D2,DnDnDnDn)3.1 3.1 逻辑模型基础知识逻辑模型基础知识逻辑模型基础知识逻辑模型基础知识3.1.2 3.1.2 关系数据库的基本概念关系数据库的基本概念关系数据库的基本概念关系数据库的基本概念 (2 2 2 2)关系中的基本名词)关系中的基本名词)关系中的基本名词)关系中的基本名词 元元元元组组组组
17、(Tuple)(Tuple)(Tuple)(Tuple)。关关关关系系系系表表表表中中中中的的的的每每每每一一一一横横横横行行行行称称称称作作作作一一一一个个个个元元元元组组组组,组成元组的元素为分量。组成元组的元素为分量。组成元组的元素为分量。组成元组的元素为分量。属性属性属性属性(Attribute)(Attribute)(Attribute)(Attribute)。关系中的每一列称为一个属性。关系中的每一列称为一个属性。关系中的每一列称为一个属性。关系中的每一列称为一个属性。候候候候选选选选码码码码(Candidate Candidate Candidate Candidate KeyK
18、eyKeyKey)和和和和主主主主码码码码(Primary Primary Primary Primary KeyKeyKeyKey)。若若若若关关关关系系系系中中中中的的的的某某某某一一一一属属属属性性性性组组组组(或或或或单单单单个个个个属属属属性性性性)的的的的值值值值能能能能惟惟惟惟一一一一地地地地标标标标识识识识一一一一个个个个元元元元组组组组,则则则则称称称称该该该该属属属属性性性性组组组组(或或或或属属属属性性性性)为为为为候候候候选选选选码码码码。为为为为数数数数据据据据管管管管理理理理方方方方便便便便,当一个关系有多个候选码时,应选定其中一个候选码为主码。当一个关系有多个候选
19、码时,应选定其中一个候选码为主码。当一个关系有多个候选码时,应选定其中一个候选码为主码。当一个关系有多个候选码时,应选定其中一个候选码为主码。全全全全码码码码 (All-Key)(All-Key)(All-Key)(All-Key)。若若若若关关关关系系系系的的的的候候候候选选选选码码码码中中中中只只只只包包包包含含含含一一一一个个个个属属属属性性性性,则则则则称称称称它它它它为为为为单单单单属属属属性性性性码码码码;若若若若候候候候选选选选码码码码是是是是由由由由多多多多个个个个属属属属性性性性构构构构成成成成的的的的,则则则则称称称称为为为为它它它它为多属性码。为多属性码。为多属性码。为多
20、属性码。主主主主属属属属性性性性(Prime Prime Prime Prime AttributeAttributeAttributeAttribute)和和和和非非非非主主主主属属属属性性性性(Non-Key Non-Key Non-Key Non-Key AttributeAttributeAttributeAttribute)。关关关关系系系系中中中中,候候候候选选选选码码码码中中中中的的的的属属属属性性性性称称称称为为为为主主主主属属属属性性性性,不不不不包包包包含含含含在任何候选码中的属性称为非主属性。在任何候选码中的属性称为非主属性。在任何候选码中的属性称为非主属性。在任何候选码
21、中的属性称为非主属性。3.1 3.1 逻辑模型基础知识逻辑模型基础知识逻辑模型基础知识逻辑模型基础知识3.1.2 3.1.2 关系数据库的基本概念关系数据库的基本概念关系数据库的基本概念关系数据库的基本概念 (3 3 3 3)数据库中关系的类型)数据库中关系的类型)数据库中关系的类型)数据库中关系的类型 关关关关系系系系数数数数据据据据库库库库中中中中的的的的关关关关系系系系可可可可以以以以分分分分为为为为基基基基本本本本表表表表、视视视视图图图图表表表表和和和和查查查查询询询询表表表表三三三三种种种种类类类类型型型型。这这这这三三三三种种种种类类类类型型型型的的的的关关关关系系系系以以以以不
22、不不不同同同同的的的的身身身身份份份份保保保保存存存存在在在在数数数数据据据据库库库库中中中中,其其其其作用和处理方法也各不相同。作用和处理方法也各不相同。作用和处理方法也各不相同。作用和处理方法也各不相同。基基基基本本本本表表表表。基基基基本本本本表表表表是是是是关关关关系系系系数数数数据据据据库库库库中中中中实实实实际际际际存存存存在在在在的的的的表表表表,是是是是实实实实际存储数据的逻辑表示。际存储数据的逻辑表示。际存储数据的逻辑表示。际存储数据的逻辑表示。视视视视图图图图表表表表。视视视视图图图图表表表表是是是是由由由由基基基基本本本本表表表表或或或或其其其其他他他他视视视视图图图图表
23、表表表导导导导出出出出的的的的表表表表。视视视视图图图图表表表表是是是是为为为为数数数数据据据据查查查查询询询询方方方方便便便便、数数数数据据据据处处处处理理理理简简简简便便便便及及及及数数数数据据据据安安安安全全全全要要要要求求求求而而而而设设设设计的数据虚表,它不对应实际存储的数据。计的数据虚表,它不对应实际存储的数据。计的数据虚表,它不对应实际存储的数据。计的数据虚表,它不对应实际存储的数据。查查查查询询询询表表表表。查查查查询询询询表表表表是是是是指指指指查查查查询询询询结结结结果果果果表表表表或或或或查查查查询询询询中中中中生生生生成成成成的的的的临临临临时时时时表表表表。由由由由于
24、于于于关关关关系系系系运运运运算算算算是是是是集集集集合合合合运运运运算算算算,在在在在关关关关系系系系操操操操作作作作过过过过程程程程中中中中会会会会产产产产生生生生一一一一些些些些临时表,称为查询表。临时表,称为查询表。临时表,称为查询表。临时表,称为查询表。3.1 3.1 逻辑模型基础知识逻辑模型基础知识逻辑模型基础知识逻辑模型基础知识3.1.2 3.1.2 关系数据库的基本概念关系数据库的基本概念关系数据库的基本概念关系数据库的基本概念 (4 4 4 4)数据库中基本关系的性质)数据库中基本关系的性质)数据库中基本关系的性质)数据库中基本关系的性质关系数据库中的基本表具有以下关系数据库
25、中的基本表具有以下关系数据库中的基本表具有以下关系数据库中的基本表具有以下6 6 6 6个性质。个性质。个性质。个性质。同一属性的数据具有同质性。同一属性的数据具有同质性。同一属性的数据具有同质性。同一属性的数据具有同质性。同一关系的属性名具有不能重复性。同一关系的属性名具有不能重复性。同一关系的属性名具有不能重复性。同一关系的属性名具有不能重复性。关系中的列位置具有顺序无关性。关系中的列位置具有顺序无关性。关系中的列位置具有顺序无关性。关系中的列位置具有顺序无关性。关系具有元组无冗余性。关系具有元组无冗余性。关系具有元组无冗余性。关系具有元组无冗余性。关系中的元组位置具有顺序无关性。关系中的
26、元组位置具有顺序无关性。关系中的元组位置具有顺序无关性。关系中的元组位置具有顺序无关性。关系中每一个分量都必须是不可分的数据项。关系中每一个分量都必须是不可分的数据项。关系中每一个分量都必须是不可分的数据项。关系中每一个分量都必须是不可分的数据项。3.1 3.1 逻辑模型基础知识逻辑模型基础知识逻辑模型基础知识逻辑模型基础知识3.1.2 3.1.2 关系数据库的基本概念关系数据库的基本概念关系数据库的基本概念关系数据库的基本概念 (5 5 5 5)关系模式()关系模式()关系模式()关系模式(Relation SchemaRelation SchemaRelation SchemaRelati
27、on Schema)的定义)的定义)的定义)的定义 关系的描述称为关系模式。可以形式化地表示为:关系的描述称为关系模式。可以形式化地表示为:关系的描述称为关系模式。可以形式化地表示为:关系的描述称为关系模式。可以形式化地表示为:R R R R(U U U U,D D D D,DomDomDomDom,F F F F)其其其其中中中中:R R R R为为为为关关关关系系系系名名名名,它它它它是是是是关关关关系系系系的的的的形形形形式式式式化化化化表表表表示示示示;U U U U为为为为组组组组成成成成该该该该关关关关系系系系的的的的属属属属性性性性集集集集合合合合;D D D D为为为为属属属属
28、性性性性组组组组U U U U中中中中属属属属性性性性所所所所来来来来自自自自的的的的域域域域;DomDomDomDom为为为为属属属属性性性性向向向向域的映像的集合;域的映像的集合;域的映像的集合;域的映像的集合;F F F F为属性间数据的依赖关系集合。为属性间数据的依赖关系集合。为属性间数据的依赖关系集合。为属性间数据的依赖关系集合。(6 6 6 6)关系数据库()关系数据库()关系数据库()关系数据库(Relation DatabaseRelation DatabaseRelation DatabaseRelation Database)在在在在关关关关系系系系数数数数据据据据库库库库
29、中中中中,实实实实体体体体集集集集以以以以及及及及实实实实体体体体间间间间的的的的联联联联系系系系都都都都是是是是用用用用关关关关系系系系来来来来表表表表示示示示的的的的。在在在在某某某某一一一一应应应应用用用用领领领领域域域域中中中中,所所所所有有有有实实实实体体体体集集集集及及及及实实实实体体体体之之之之间间间间联联联联系系系系所所所所形形形形成成成成关关关关系系系系的的的的集集集集合合合合就就就就构构构构成成成成了了了了一一一一个个个个关关关关系系系系数数数数据据据据库库库库。关关关关系系系系数数数数据据据据库库库库也也也也有有有有型型型型和和和和值值值值的的的的区区区区别别别别。关关关
30、关系系系系数数数数据据据据库库库库的的的的型型型型称称称称为为为为关关关关系系系系数数数数据据据据库库库库模模模模式式式式,它它它它是是是是对对对对关关关关系系系系数数数数据据据据库库库库的的的的描描描描述述述述,包包包包括括括括若若若若干干干干域域域域的的的的定定定定义义义义以以以以及及及及在在在在这这这这些些些些域域域域上上上上定定定定义义义义的的的的若若若若干干干干关关关关系系系系模模模模式式式式。关关关关系系系系数数数数据据据据库库库库的的的的值值值值是是是是这这这这些些些些关关关关系系系系模模模模式式式式在在在在某某某某一一一一时时时时刻刻刻刻对对对对应应应应关关关关系的集合,也就是
31、所说的关系数据库的数据。系的集合,也就是所说的关系数据库的数据。系的集合,也就是所说的关系数据库的数据。系的集合,也就是所说的关系数据库的数据。3.1 3.1 逻辑模型基础知识逻辑模型基础知识逻辑模型基础知识逻辑模型基础知识3.1.2 3.1.2 关系数据库的基本概念关系数据库的基本概念关系数据库的基本概念关系数据库的基本概念 2 2 2 2关系操作概述关系操作概述关系操作概述关系操作概述 (1 1 1 1)关系操作的基本内容)关系操作的基本内容)关系操作的基本内容)关系操作的基本内容 关关关关系系系系操操操操作作作作包包包包括括括括数数数数据据据据查查查查询询询询、数数数数据据据据维维维维护
32、护护护和和和和数数数数据据据据控控控控制制制制三三三三大大大大功功功功能能能能。数数数数据据据据查查查查询询询询指指指指数数数数据据据据检检检检索索索索、统统统统计计计计、排排排排序序序序、分分分分组组组组以以以以及及及及用用用用户户户户对对对对信信信信息息息息的的的的需需需需求求求求等等等等功功功功能能能能;数数数数据据据据维维维维护护护护指指指指数数数数据据据据增增增增加加加加、删删删删除除除除、修修修修改改改改等等等等数数数数据据据据自自自自身身身身更更更更新新新新的的的的功功功功能能能能;数数数数据据据据控控控控制制制制是是是是为为为为了了了了保保保保证证证证数数数数据据据据的的的的安
33、安安安全全全全性性性性和和和和完完完完整整整整性性性性而而而而采采采采用用用用的的的的数数数数据据据据存存存存取取取取控控控控制制制制及及及及并并并并发发发发控控控控制制制制等等等等功功功功能能能能。关关关关系系系系操操操操作作作作的的的的数数数数据据据据查查查查询询询询和和和和数数数数据据据据维维维维 护护护护 功功功功 能能能能 使使使使 用用用用 关关关关 系系系系 代代代代 数数数数 中中中中 的的的的 选选选选 择择择择(SelectSelectSelectSelect)、投投投投 影影影影(ProjectProjectProjectProject)、连连连连接接接接(JoinJoi
34、nJoinJoin)、除除除除(DivideDivideDivideDivide)、并并并并(UnionUnionUnionUnion)、交交交交(IntersectionIntersectionIntersectionIntersection)、差差差差(DifferenceDifferenceDifferenceDifference)和和和和 广广广广 义义义义 笛笛笛笛 卡卡卡卡 儿儿儿儿 积积积积(Extended Extended Extended Extended Cartesian Cartesian Cartesian Cartesian ProductProductProdu
35、ctProduct)8 8 8 8种种种种操操操操作作作作表表表表示示示示,其其其其中中中中前前前前4 4 4 4种种种种为为为为专门的关系运算,而后专门的关系运算,而后专门的关系运算,而后专门的关系运算,而后4 4 4 4种为传统的集合运算。种为传统的集合运算。种为传统的集合运算。种为传统的集合运算。3.1 3.1 逻辑模型基础知识逻辑模型基础知识逻辑模型基础知识逻辑模型基础知识3.1.2 3.1.2 关系数据库的基本概念关系数据库的基本概念关系数据库的基本概念关系数据库的基本概念 (2 2 2 2)关系操作的特点)关系操作的特点)关系操作的特点)关系操作的特点 关系操作具有以下关系操作具有
36、以下关系操作具有以下关系操作具有以下3 3 3 3个明显的特点。个明显的特点。个明显的特点。个明显的特点。关关关关系系系系操操操操作作作作语语语语言言言言操操操操作作作作一一一一体体体体化化化化。关关关关系系系系语语语语言言言言具具具具有有有有数数数数据据据据定定定定义义义义、查询、更新和控制一体化的特点。查询、更新和控制一体化的特点。查询、更新和控制一体化的特点。查询、更新和控制一体化的特点。关关关关系系系系操操操操作作作作的的的的方方方方式式式式是是是是一一一一次次次次一一一一集集集集合合合合方方方方式式式式。其其其其他他他他系系系系统统统统的的的的操操操操作作作作是是是是一一一一次次次次
37、一一一一记记记记录录录录(record-at-a-timerecord-at-a-timerecord-at-a-timerecord-at-a-time)方方方方式式式式,而而而而关关关关系系系系操操操操作作作作的的的的方方方方式式式式则则则则是是是是一一一一次次次次一一一一集集集集合合合合(set-at-a-timeset-at-a-timeset-at-a-timeset-at-a-time)方方方方式式式式,即即即即关关关关系系系系操操操操作作作作的的的的初初初初始始始始数据、中间数据和结果数据都是集合。数据、中间数据和结果数据都是集合。数据、中间数据和结果数据都是集合。数据、中间数据
38、和结果数据都是集合。关关关关系系系系操操操操作作作作语语语语言言言言是是是是高高高高度度度度非非非非过过过过程程程程化化化化的的的的语语语语言言言言。关关关关系系系系操操操操作作作作语语语语言言言言具具具具有有有有强强强强大大大大的的的的表表表表达达达达能能能能力力力力。例例例例如如如如,关关关关系系系系查查查查询询询询语语语语言言言言集集集集检检检检索索索索、统统统统计计计计、排排排排序序序序等等等等多多多多项项项项功功功功能能能能为为为为一一一一条条条条语语语语句句句句,它它它它等等等等效效效效于于于于其其其其他他他他语语语语言言言言的的的的一一一一大大大大段段段段程程程程序序序序。用用用
39、用户户户户使使使使用用用用关关关关系系系系语语语语言言言言时时时时,只只只只需需需需要要要要指指指指出出出出做做做做什什什什么么么么,而而而而不不不不需需需需要要要要指指指指出出出出怎怎怎怎么么么么做做做做,数数数数据据据据存存存存取取取取路路路路径径径径的的的的选选选选择择择择、数数数数据据据据操操操操作作作作方方方方法法法法的的的的选选选选择择择择和和和和优优优优化化化化都都都都由由由由DBMSDBMSDBMSDBMS自动完成。自动完成。自动完成。自动完成。3.1 3.1 逻辑模型基础知识逻辑模型基础知识逻辑模型基础知识逻辑模型基础知识3.1.2 3.1.2 关系数据库的基本概念关系数据库
40、的基本概念关系数据库的基本概念关系数据库的基本概念 (3 3 3 3)关系操作语言的种类)关系操作语言的种类)关系操作语言的种类)关系操作语言的种类 关系操作语言可以分为以下关系操作语言可以分为以下关系操作语言可以分为以下关系操作语言可以分为以下3 3 3 3类。类。类。类。关关关关系系系系代代代代数数数数语语语语言言言言。关关关关系系系系代代代代数数数数语语语语言言言言是是是是用用用用对对对对关关关关系系系系的的的的运运运运算算算算来来来来表表表表达达达达 查查查查 询询询询 要要要要 求求求求 的的的的 语语语语 言言言言。ISBLISBLISBLISBL(Information Info
41、rmation Information Information System System System System Base Base Base Base LanguageLanguageLanguageLanguage)为关系代数语言的代表。)为关系代数语言的代表。)为关系代数语言的代表。)为关系代数语言的代表。关关关关系系系系演演演演算算算算语语语语言言言言。关关关关系系系系演演演演算算算算语语语语言言言言是是是是用用用用查查查查询询询询得得得得到到到到的的的的元元元元组组组组应应应应满足的谓词条件来表达查询要求的语言。满足的谓词条件来表达查询要求的语言。满足的谓词条件来表达查询要求的
42、语言。满足的谓词条件来表达查询要求的语言。基基基基于于于于映映映映像像像像的的的的语语语语言言言言。基基基基于于于于映映映映像像像像的的的的语语语语言言言言是是是是具具具具有有有有关关关关系系系系代代代代数数数数和和和和关关关关 系系系系 演演演演 算算算算 双双双双 重重重重 特特特特 点点点点 的的的的 语语语语 言言言言。SQLSQLSQLSQL(Structure Structure Structure Structure Query Query Query Query LanguageLanguageLanguageLanguage)是是是是基基基基于于于于映映映映像像像像的的的的语
43、语语语言言言言。SQLSQLSQLSQL包包包包括括括括数数数数据据据据定定定定义义义义、数数数数据据据据操操操操作作作作和和和和数数数数据据据据控控控控制制制制三三三三种种种种功功功功能能能能,具具具具有有有有语语语语言言言言简简简简洁洁洁洁,易易易易学学学学易易易易用用用用的的的的特特特特点点点点,它它它它是是是是关系数据库的标准语言和主流语言。关系数据库的标准语言和主流语言。关系数据库的标准语言和主流语言。关系数据库的标准语言和主流语言。3.1 3.1 逻辑模型基础知识逻辑模型基础知识逻辑模型基础知识逻辑模型基础知识3.1.2 3.1.2 关系数据库的基本概念关系数据库的基本概念关系数据
44、库的基本概念关系数据库的基本概念 3 3 3 3关系的完整性关系的完整性关系的完整性关系的完整性 关关关关系系系系模模模模型型型型的的的的完完完完整整整整性性性性规规规规则则则则是是是是对对对对关关关关系系系系的的的的某某某某种种种种约约约约束束束束条条条条件件件件。关关关关系系系系模模模模型型型型中中中中有有有有三三三三类类类类完完完完整整整整性性性性约约约约束束束束:实实实实体体体体完完完完整整整整性性性性、参参参参照照照照完完完完整整整整性性性性和和和和用用用用户户户户定定定定义义义义的的的的完完完完整整整整性性性性。其其其其中中中中实实实实体体体体完完完完整整整整性性性性和和和和参参参
45、参照照照照完完完完整整整整性性性性是是是是关关关关系系系系模模模模型型型型必必必必须须须须满满满满足足足足的完整性约束条件,应该由关系系统自动支持。的完整性约束条件,应该由关系系统自动支持。的完整性约束条件,应该由关系系统自动支持。的完整性约束条件,应该由关系系统自动支持。(1 1 1 1)关系模型的实体完整性()关系模型的实体完整性()关系模型的实体完整性()关系模型的实体完整性(Entity IntegrityEntity IntegrityEntity IntegrityEntity Integrity)实体完整性能够保证实体的惟一性。实体完整性能够保证实体的惟一性。实体完整性能够保证实
46、体的惟一性。实体完整性能够保证实体的惟一性。实体完整性能够保证实体的可区分性。实体完整性能够保证实体的可区分性。实体完整性能够保证实体的可区分性。实体完整性能够保证实体的可区分性。(2 2 2 2)关系模型的参照完整性()关系模型的参照完整性()关系模型的参照完整性()关系模型的参照完整性(Reference IntegrityReference IntegrityReference IntegrityReference Integrity)外码和参照关系。外码和参照关系。外码和参照关系。外码和参照关系。参照完整性规则。参照完整性规则。参照完整性规则。参照完整性规则。(3 3 3 3)用户定义
47、的完整性()用户定义的完整性()用户定义的完整性()用户定义的完整性(User-Defined IntegrityUser-Defined IntegrityUser-Defined IntegrityUser-Defined Integrity)3.1 3.1 逻辑模型基础知识逻辑模型基础知识逻辑模型基础知识逻辑模型基础知识3.2.1 3.2.1 关系模式设计中的问题关系模式设计中的问题关系模式设计中的问题关系模式设计中的问题 关系存在着如下问题:关系存在着如下问题:关系存在着如下问题:关系存在着如下问题:(1 1 1 1)数据冗余大)数据冗余大)数据冗余大)数据冗余大 每每每每一一一一个个
48、个个系系系系名名名名和和和和系系系系主主主主任任任任的的的的名名名名字字字字存存存存储储储储的的的的次次次次数数数数等等等等于于于于该该该该系系系系的的的的学学学学生生生生人人人人数乘以每个学生选修的课程门数,系名和系主任重复量太大。数乘以每个学生选修的课程门数,系名和系主任重复量太大。数乘以每个学生选修的课程门数,系名和系主任重复量太大。数乘以每个学生选修的课程门数,系名和系主任重复量太大。(2 2 2 2)插入异常)插入异常)插入异常)插入异常 一一一一个个个个新新新新系系系系没没没没有有有有招招招招生生生生时时时时,系系系系名名名名和和和和系系系系主主主主任任任任名名名名无无无无法法法法
49、插插插插入入入入到到到到数数数数据据据据库库库库中中中中,因因因因为为为为在在在在这这这这个个个个关关关关系系系系模模模模式式式式中中中中,主主主主码码码码是是是是(学学学学号号号号,课课课课程程程程名名名名),而而而而这这这这时时时时因因因因没没没没有有有有学学学学生生生生而而而而使使使使得得得得学学学学号号号号无无无无值值值值,所所所所以以以以没没没没有有有有主主主主属属属属性性性性值值值值,关关关关系系系系数数数数据据据据库库库库无法操作,因此引起插入异常。无法操作,因此引起插入异常。无法操作,因此引起插入异常。无法操作,因此引起插入异常。(3 3 3 3)删除异常)删除异常)删除异常)
50、删除异常 当当当当一一一一个个个个系系系系的的的的学学学学生生生生都都都都毕毕毕毕业业业业了了了了而而而而又又又又没没没没招招招招新新新新生生生生时时时时,删删删删除除除除了了了了全全全全部部部部学学学学生生生生记记记记录录录录,随随随随之之之之也也也也删删删删除除除除了了了了系系系系名名名名和和和和系系系系主主主主任任任任名名名名。这这这这个个个个系系系系依依依依然然然然存存存存在在在在,而而而而在数据库中却无法找到该系的信息,即出现了删除异常。在数据库中却无法找到该系的信息,即出现了删除异常。在数据库中却无法找到该系的信息,即出现了删除异常。在数据库中却无法找到该系的信息,即出现了删除异常