《第二讲数据设计》由会员分享,可在线阅读,更多相关《第二讲数据设计(56页珍藏版)》请在金锄头文库上搜索。
1、数据库应用基础数据库应用基础 Access 2003Access 2003北京工商大北京工商大学学本本讲内容内容 数据模型数据模型1 1数据库应用系统的开发数据库应用系统的开发2 2 数据库设计数据库设计数据库设计数据库设计3 3 规范化设计规范化设计4 4北京工商大北京工商大学学2.1数据模型数据模型计算机不能直接算机不能直接处理理现实世界世界中的具体事物中的具体事物首先将首先将现实世界的事物及世界的事物及联系抽象成系抽象成信息世信息世界界的概念模型的概念模型然后再抽象成然后再抽象成计算机世界算机世界的数据模型。的数据模型。北京工商大北京工商大学学2.1数据模型数据模型模型模型是是对客客观世
2、界中复世界中复杂对象的抽象描述,象的抽象描述,如航模、如航模、车模。模。在数据在数据库中用中用数据模型数据模型这个工具来描述个工具来描述现实世界中数据的世界中数据的结构、数据的性构、数据的性质、数据之、数据之间的的联系等。系等。北京工商大北京工商大学学2.1数据模型数据模型数据模型数据模型数据模型数据模型概念概念模型模型实施实施模型模型北京工商大北京工商大学学2.1.1概念模型概念模型概念模型概念模型用于信息世界的建模,也称用于信息世界的建模,也称信息模信息模型型。它是按用。它是按用户的的观点,在概念上表示数据点,在概念上表示数据库中存中存储什么事物以及事物之什么事物以及事物之间的的联系,而系
3、,而不管事物和不管事物和联系如何在数据系如何在数据库中存中存储。北京工商大北京工商大学学1、概念模型中的基本概念、概念模型中的基本概念 (1)(1)实实体体体体 客客客客观观存在并可相互区存在并可相互区存在并可相互区存在并可相互区别别的事物称的事物称的事物称的事物称为实为实体。体。体。体。实实体可以是具体的人、事、体可以是具体的人、事、体可以是具体的人、事、体可以是具体的人、事、物,也可以是抽象的概念或物,也可以是抽象的概念或物,也可以是抽象的概念或物,也可以是抽象的概念或联联系。如一个学生,一系。如一个学生,一系。如一个学生,一系。如一个学生,一门课门课,一,一,一,一辆辆汽汽汽汽车车;也可
4、以是抽象的事件,如一堂也可以是抽象的事件,如一堂也可以是抽象的事件,如一堂也可以是抽象的事件,如一堂课课,一次比,一次比,一次比,一次比赛赛等。等。等。等。 (2)(2)属性属性属性属性 实实体所具有的某一特性称体所具有的某一特性称体所具有的某一特性称体所具有的某一特性称为为属性。一个属性。一个属性。一个属性。一个实实体可以由若干个属性来刻体可以由若干个属性来刻体可以由若干个属性来刻体可以由若干个属性来刻画,如一个学生画,如一个学生画,如一个学生画,如一个学生实实体有学号、姓名、年体有学号、姓名、年体有学号、姓名、年体有学号、姓名、年龄龄、性、性、性、性别别、班、班、班、班级级等方面的属等方面
5、的属等方面的属等方面的属性。属性有性。属性有性。属性有性。属性有 型型型型 和和和和“ “值值” ”之分,之分,之分,之分, 型型型型 即即即即为为属性名,如姓名、年属性名,如姓名、年属性名,如姓名、年属性名,如姓名、年龄龄是属是属是属是属性的型;性的型;性的型;性的型;“ “值值” ”即即即即为为属性的具体内容。属性的具体内容。属性的具体内容。属性的具体内容。 (3)(3)键键 唯一唯一唯一唯一标识实标识实体的属性或属性集称体的属性或属性集称体的属性或属性集称体的属性或属性集称为键为键。如学生的学号可以作。如学生的学号可以作。如学生的学号可以作。如学生的学号可以作为为学生学生学生学生实实体的
6、体的体的体的键键,但学生的姓名有可能有重名,因此不能作,但学生的姓名有可能有重名,因此不能作,但学生的姓名有可能有重名,因此不能作,但学生的姓名有可能有重名,因此不能作为为学生学生学生学生实实体的体的体的体的键键。 (4)(4)域域域域 属性的取属性的取属性的取属性的取值值范范范范围围称称称称为该为该属性的域。如学号的域属性的域。如学号的域属性的域。如学号的域属性的域。如学号的域为为1010位整数,姓名的位整数,姓名的位整数,姓名的位整数,姓名的域域域域为为字符串集合,性字符串集合,性字符串集合,性字符串集合,性别别的域的域的域的域为为男和女。男和女。男和女。男和女。 北京工商大北京工商大学学
7、(5)(5)实实体型体型体型体型 若干个属性型若干个属性型若干个属性型若干个属性型组组成的集合是一成的集合是一成的集合是一成的集合是一实实体型,如学生(学号,体型,如学生(学号,体型,如学生(学号,体型,如学生(学号,姓名,年姓名,年姓名,年姓名,年龄龄,性,性,性,性别别,系)就是一个,系)就是一个,系)就是一个,系)就是一个实实体型。体型。体型。体型。 (6)(6)实实体集体集体集体集同型同型同型同型实实体的集合称体的集合称体的集合称体的集合称为实为实体集。如所有的学生、所有的体集。如所有的学生、所有的体集。如所有的学生、所有的体集。如所有的学生、所有的课课程等。程等。程等。程等。 (7)
8、(7)联联系系系系 现实现实世界中事物内部以及事物之世界中事物内部以及事物之世界中事物内部以及事物之世界中事物内部以及事物之间间是有是有是有是有联联系的,在信息系的,在信息系的,在信息系的,在信息世界中反映世界中反映世界中反映世界中反映为实为实体内部的体内部的体内部的体内部的联联系和系和系和系和实实体之体之体之体之间间的的的的联联系。系。系。系。实实体体体体内部的内部的内部的内部的联联系通常是指系通常是指系通常是指系通常是指组组成成成成实实体的各属性之体的各属性之体的各属性之体的各属性之间间的的的的联联系,而系,而系,而系,而实实体之体之体之体之间间的的的的联联系通常是指不同系通常是指不同系通
9、常是指不同系通常是指不同实实体集之体集之体集之体集之间间的的的的联联系。系。系。系。北京工商大北京工商大学学2、两个、两个实体体间联系的系的类型型(1)(1)一一一一对对一一一一联联系(系(系(系(1:11:1)实实体集体集体集体集AA中的一个中的一个中的一个中的一个实实体至多与体至多与体至多与体至多与实实体集体集体集体集BB中的一个中的一个中的一个中的一个实实体相体相体相体相对应对应,反之亦,反之亦,反之亦,反之亦然,然,然,然,则则称称称称实实体集体集体集体集AA与与与与实实体集体集体集体集BB为为一一一一对对一的一的一的一的联联系,系,系,系,记记作作作作1:11:1。如一个班。如一个班
10、。如一个班。如一个班级级只有一个班只有一个班只有一个班只有一个班长长,一个班,一个班,一个班,一个班长长只能管理一个班只能管理一个班只能管理一个班只能管理一个班级级。(2)(2)一一一一对对多多多多联联系(系(系(系(1:n1:n) 如果如果如果如果对对于于于于实实体集体集体集体集AA中的每一个中的每一个中的每一个中的每一个实实体,体,体,体,实实体集体集体集体集BB中有多个中有多个中有多个中有多个实实体与之体与之体与之体与之对对应应,反之,反之,反之,反之,对对于于于于实实体集体集体集体集BB中的每一个中的每一个中的每一个中的每一个实实体,体,体,体,实实体集体集体集体集AA中至多只有一个中
11、至多只有一个中至多只有一个中至多只有一个实实体与之体与之体与之体与之对应对应,则则称称称称实实体集体集体集体集AA与与与与实实体体体体BB有一有一有一有一对对多多多多联联系,系,系,系,记为记为1:n1:n。如。如。如。如学校的一个系有多名教学校的一个系有多名教学校的一个系有多名教学校的一个系有多名教师师,而一个教,而一个教,而一个教,而一个教师师只属于一个系。只属于一个系。只属于一个系。只属于一个系。(3)(3)多多多多对对多多多多联联系(系(系(系(m:nm:n) 如果如果如果如果对对于于于于实实体集体集体集体集AA中的每一个中的每一个中的每一个中的每一个实实体,体,体,体,实实体集体集体
12、集体集BB中有多个中有多个中有多个中有多个实实体与之体与之体与之体与之对对应应,反之,反之,反之,反之,对对于于于于实实体集体集体集体集BB中的每一个中的每一个中的每一个中的每一个实实体,体,体,体,实实体集体集体集体集AA中也有多个中也有多个中也有多个中也有多个实实体体体体与之与之与之与之对应对应,则则称称称称实实体集体集体集体集AA与与与与实实体体体体BB具有多具有多具有多具有多对对多多多多联联系,系,系,系,记为记为m:nm:n。如。如。如。如一个学生可以一个学生可以一个学生可以一个学生可以选选修多修多修多修多门课门课程,一程,一程,一程,一门课门课程可以被多名学生程可以被多名学生程可以
13、被多名学生程可以被多名学生选选修。修。修。修。北京工商大北京工商大学学3、实体体-联系(系(Entity-Relationship)方法)方法实实体体体体- -联联系方法是最广泛使用的概念模型系方法是最广泛使用的概念模型系方法是最广泛使用的概念模型系方法是最广泛使用的概念模型设计设计方方方方法,法,法,法,该该方法用方法用方法用方法用E-RE-R图图来描述来描述来描述来描述现实现实世界的概念模世界的概念模世界的概念模世界的概念模型。型。型。型。E-RE-R图图提供了表示提供了表示提供了表示提供了表示实实体型、属性和体型、属性和体型、属性和体型、属性和联联系的系的系的系的方法:方法:方法:方法:
14、 (1)(1)实实体型:体型:体型:体型:用矩形表示,矩形框内写明用矩形表示,矩形框内写明用矩形表示,矩形框内写明用矩形表示,矩形框内写明实实体名。体名。体名。体名。 (2)(2)属性:属性:属性:属性:用用用用椭圆椭圆形表示,并用形表示,并用形表示,并用形表示,并用连线连线将其与相将其与相将其与相将其与相应应的的的的实实体体体体连连接起来。接起来。接起来。接起来。(3)(3)联联系:系:系:系:用菱形表示,菱形框内写明用菱形表示,菱形框内写明用菱形表示,菱形框内写明用菱形表示,菱形框内写明联联系名,并系名,并系名,并系名,并用用用用连线连线分分分分别别与有关与有关与有关与有关实实体体体体连连
15、接起来,同接起来,同接起来,同接起来,同时时在在在在连线连线旁旁旁旁标标上上上上联联系的系的系的系的类类型(型(型(型(1:11:1、1:n1:n或或或或m:nm:n)。)。)。)。编号号姓姓名名性性别学学历职称称教教师课程程m教教师讲授授n教教师1系部系部聘聘任任n北京工商大北京工商大学学2.1.2实施模型施模型概念模型是概念模型是“概念概念”上的,而上的,而实施模型是按施模型是按计算机系算机系统的的观点点对数据建模,与具体的数据数据建模,与具体的数据库管理系管理系统有关,有关,侧重于重于数据和数据和联系的表示系的表示或存或存储方法方法。实施模型主要包括施模型主要包括层次模型次模型、网状模型
16、网状模型、关关系模型系模型,这三种数据模型的区三种数据模型的区别在于数据在于数据结构不同,即构不同,即实体之体之间联系的表示方式不同。系的表示方式不同。北京工商大北京工商大学学2.1.3关系数据关系数据库关系模型和基本关系模型和基本关系模型和基本关系模型和基本术语术语1 1、关系模型关系模型关系模型关系模型关系模型的数据关系模型的数据关系模型的数据关系模型的数据结结构是一个构是一个构是一个构是一个“ “二二二二维维表框架表框架表框架表框架” ”组组成的集合,每个二成的集合,每个二成的集合,每个二成的集合,每个二维维表又表又表又表又可称可称可称可称为为关系,由关系,由关系,由关系,由行和列行和列
17、行和列行和列组组成。成。成。成。 22、关系、关系、关系、关系术语术语(1)(1)关系关系关系关系一个关系就是一一个关系就是一一个关系就是一一个关系就是一张张二二二二维维表。表。表。表。(2)(2)元元元元组组表中第二行开始的每一行称表中第二行开始的每一行称表中第二行开始的每一行称表中第二行开始的每一行称为为“ “元元元元组组” ”,即通常所,即通常所,即通常所,即通常所说说的的的的“ “记录记录” ”,是构,是构,是构,是构成关系的一个个成关系的一个个成关系的一个个成关系的一个个实实体。所以体。所以体。所以体。所以说说,“ “关系关系关系关系” ”是是是是“ “元元元元组组” ”的的的的集合
18、集合集合集合,“ “元元元元组组” ”是是是是属性属性属性属性值值的集合,一个关系模型中的数据就是的集合,一个关系模型中的数据就是的集合,一个关系模型中的数据就是的集合,一个关系模型中的数据就是这样这样逐行逐列逐行逐列逐行逐列逐行逐列组织组织起来起来起来起来的。的。的。的。北京工商大北京工商大学学 (3)(3)属性属性属性属性二二二二维维表中的一列即表中的一列即表中的一列即表中的一列即为为一个属性,又称一个属性,又称一个属性,又称一个属性,又称为为字段字段字段字段,第一行列出的是属性,第一行列出的是属性,第一行列出的是属性,第一行列出的是属性名(字段名)。名(字段名)。名(字段名)。名(字段名
19、)。 (4)(4)域域域域属性的取属性的取属性的取属性的取值值范范范范围围。 (5)(5)分量分量分量分量元元元元组组中的一个属性中的一个属性中的一个属性中的一个属性值值。关系模型要求关系必。关系模型要求关系必。关系模型要求关系必。关系模型要求关系必须须是是是是规规范化的,最基本范化的,最基本范化的,最基本范化的,最基本的条件就是,关系的每一个分量必的条件就是,关系的每一个分量必的条件就是,关系的每一个分量必的条件就是,关系的每一个分量必须须是一个不可分的数据是一个不可分的数据是一个不可分的数据是一个不可分的数据项项,即不,即不,即不,即不允允允允许许表中表中表中表中还还有表。有表。有表。有表
20、。(6)(6)关系模式关系模式关系模式关系模式对对关系的描述,一般表示关系的描述,一般表示关系的描述,一般表示关系的描述,一般表示为为:关系名(属性关系名(属性关系名(属性关系名(属性1 1,属性,属性,属性,属性2 2,属性,属性,属性,属性n n)(7)(7)关系数据关系数据关系数据关系数据库库对应对应于一个关系模型的所有关系的集合称于一个关系模型的所有关系的集合称于一个关系模型的所有关系的集合称于一个关系模型的所有关系的集合称为为关系数据关系数据关系数据关系数据库库。北京工商大北京工商大学学(8)(8)候候候候选选关关关关键键字字字字关系中的某个属性关系中的某个属性关系中的某个属性关系中
21、的某个属性组组(一个或几个属性的集合一个或几个属性的集合一个或几个属性的集合一个或几个属性的集合),它可以),它可以),它可以),它可以唯一唯一唯一唯一标识标识一个一个一个一个元元元元组组,这这个属性个属性个属性个属性组组称称称称为为候候候候选选关关关关键键字。字。字。字。(9)(9)主关主关主关主关键键字字字字一个关系中有多个侯一个关系中有多个侯一个关系中有多个侯一个关系中有多个侯选选关关关关键键字,可以字,可以字,可以字,可以选择选择其中一个作其中一个作其中一个作其中一个作为为主关主关主关主关键键字,字,字,字,也称也称也称也称为为主主主主码码或或或或主主主主键键。(10)(10)外部关外
22、部关外部关外部关键键字字字字如果一个属性如果一个属性如果一个属性如果一个属性组组不是所在关系的关不是所在关系的关不是所在关系的关不是所在关系的关键键字,但是是其他关系的关字,但是是其他关系的关字,但是是其他关系的关字,但是是其他关系的关键键字,字,字,字,则该则该属性属性属性属性组组称称称称为为外部关外部关外部关外部关键键字,也称字,也称字,也称字,也称为为外外外外码码或或或或外外外外键键。(11)(11)主属性主属性主属性主属性包含在任一候包含在任一候包含在任一候包含在任一候选选关关关关键键字中的属性称字中的属性称字中的属性称字中的属性称为为主属性。主属性。主属性。主属性。北京工商大北京工商
23、大学学本本讲内容内容 数据模型数据模型1 1数据库应用系统的开发数据库应用系统的开发2 2 数据库设计数据库设计数据库设计数据库设计3 3 规范化设计规范化设计4 4北京工商大北京工商大学学2.2数据数据库应用系用系统的开的开发数据数据库应用系用系统的开的开发方法如方法如:结构化生命周期法构化生命周期法原型法原型法面向面向对象方法象方法北京工商大北京工商大学学结结构化生命周期法构化生命周期法结构化生命周期法的基本思想构化生命周期法的基本思想是把系是把系统开开发看作是工程看作是工程项目,需目,需要要经过系系统规划、系划、系统分析、系分析、系统设计、系、系统实施、系施、系统运行和运行和维护5个个阶
24、段。段。北京工商大北京工商大学学结结构化生命周期法的开构化生命周期法的开发发步步骤骤一、系一、系统规统规划划阶阶段段在在系系统正正式式开开发之之前前,必必须进行行系系统调查和和可可行行性性分分析析。本本阶段段的的主主要要任任务是是根根据据用用户的的系系统开开发请求求,初初步步调查,明明确确问题,进行可行性分析研究。行可行性分析研究。北京工商大北京工商大学学二二、系统分析阶段系统分析阶段系系统分析分析阶段可以段可以说是系是系统开开发中最重要的一步,主要任中最重要的一步,主要任务是:是:需求分析需求分析信息采集信息采集编写写需求需求说明明书结结构化生命周期法的开构化生命周期法的开发发步步骤骤北京工
25、商大北京工商大学学三三、系统设计阶段系统设计阶段 如果系如果系统统分析分析阶阶段的任段的任务务是解决是解决“干什么干什么”的的问题问题,那么系,那么系统设计阶统设计阶段段的任的任务务是确定是确定“怎么干怎么干”。系。系统设计统设计工作由工作由总总体体设计设计和和详细设计详细设计两部分两部分组组成。成。结结构化生命周期法的开构化生命周期法的开发发步步骤骤北京工商大北京工商大学学四、四、系统实施阶段系统实施阶段第一步:第一步:应选择合适的合适的软件开件开发工具;工具;第二步:使用所第二步:使用所选择的开的开发工具,建立数据工具,建立数据库,输入原始数据,入原始数据,编写和写和调试各个模各个模块的的
26、应用用程序代程序代码;第三步:完成各个子系第三步:完成各个子系统和模和模块之之间的的联合合调试和和测试;结结构化生命周期法的开构化生命周期法的开发发步步骤骤北京工商大北京工商大学学五、五、系统运行和维护阶段系统运行和维护阶段将将系系统交交给用用户正正式式投投入入使使用用,便便进入入系系统的的运运行行和和维护阶段段。用用户在在使使用用过程程中中,可可能能会会发现很很多多问题,或或提提出出新新的的要要求求,开开发者者应不不断断对系系统进行行修修改改、维护或或调整整,直直至系至系统生命周期的生命周期的结束。束。结结构化生命周期法的开构化生命周期法的开发发步步骤骤北京工商大北京工商大学学本本讲内容内容
27、 数据模型数据模型1 1数据库应用系统的开发数据库应用系统的开发2 2 数据库设计数据库设计数据库设计数据库设计3 3 规范化设计规范化设计4 4北京工商大北京工商大学学1 1、概念模型设计、概念模型设计、概念模型设计、概念模型设计概念模型设计的描述最常用的工具是概念模型设计的描述最常用的工具是概念模型设计的描述最常用的工具是概念模型设计的描述最常用的工具是E-RE-RE-RE-R图,具体步骤如下:图,具体步骤如下:图,具体步骤如下:图,具体步骤如下:(1)(1)(1)(1)确定实体;确定实体;确定实体;确定实体;(2)(2)(2)(2)确定实体的属性;确定实体的属性;确定实体的属性;确定实体
28、的属性;(3)(3)(3)(3)确定实体的主键;确定实体的主键;确定实体的主键;确定实体的主键;(4)(4)(4)(4)确定实体间的联系类型;确定实体间的联系类型;确定实体间的联系类型;确定实体间的联系类型;(5)(5)(5)(5)画出画出画出画出E-RE-RE-RE-R图;图;图;图;2.3数据数据库的的设计实实例例“ “教学管理系教学管理系统统” ”北京工商大北京工商大学学2、逻辑数据库设计、逻辑数据库设计 逻逻逻逻辑辑辑辑数数数数据据据据库库库库设设设设计计计计是是是是将将将将概概概概念念念念模模模模型型型型转转转转换换换换成成成成数数数数据据据据库库库库管管管管理理理理系系系系统统统统
29、所所所所支支支支持持持持的的的的数数数数据据据据模模模模型型型型。如如如如果果果果是是是是关关关关系系系系型型型型数数数数据据据据库库库库管管管管理理理理系系系系统统统统,就就就就应应应应将将将将概概概概念念念念模模模模型型型型转转转转换换换换为为为为关关关关系系系系模模模模型型型型,即即即即将将将将E-E-E-E-R R R R图中的实体和联系转换为关系模式。图中的实体和联系转换为关系模式。图中的实体和联系转换为关系模式。图中的实体和联系转换为关系模式。学院学院学院学院(学院代码学院代码学院代码学院代码、学院名称、院长姓名、学院地址、学院电话、学院简介)、学院名称、院长姓名、学院地址、学院电
30、话、学院简介)、学院名称、院长姓名、学院地址、学院电话、学院简介)、学院名称、院长姓名、学院地址、学院电话、学院简介)系部系部系部系部(系部编号系部编号系部编号系部编号、学院代码、系部名称、主任、地址、电话、专业介绍)、学院代码、系部名称、主任、地址、电话、专业介绍)、学院代码、系部名称、主任、地址、电话、专业介绍)、学院代码、系部名称、主任、地址、电话、专业介绍)教师教师教师教师(教师编号教师编号教师编号教师编号、系部编号、姓名、性别、学历、职称、办公电话、手机、系部编号、姓名、性别、学历、职称、办公电话、手机、系部编号、姓名、性别、学历、职称、办公电话、手机、系部编号、姓名、性别、学历、职
31、称、办公电话、手机、E-mailE-mail、照片)、照片)、照片)、照片)班级班级班级班级(班级编号班级编号班级编号班级编号、班级名称、班长、联系电话、奖励处罚、系部编号)、班级名称、班长、联系电话、奖励处罚、系部编号)、班级名称、班长、联系电话、奖励处罚、系部编号)、班级名称、班长、联系电话、奖励处罚、系部编号)学生学生学生学生(学号学号学号学号、姓名、性别、出生年月、籍贯、个人简历、照片、奖励处罚、姓名、性别、出生年月、籍贯、个人简历、照片、奖励处罚、姓名、性别、出生年月、籍贯、个人简历、照片、奖励处罚、姓名、性别、出生年月、籍贯、个人简历、照片、奖励处罚、班级编号)班级编号)班级编号)
32、班级编号)mnn11n系部系部学院学院设置置nm1n1课程程聘任聘任教教师讲授授选修修n班班级有有有有学生学生北京工商大北京工商大学学3、规范化理论的应用、规范化理论的应用 在在在在逻逻逻逻辑辑辑辑数数数数据据据据库库库库设设设设计计计计中中中中,形形形形成成成成了了了了一一一一组组组组关关关关系系系系模模模模式式式式。如如如如果果果果关关关关系系系系模模模模式式式式没没没没有有有有设设设设计计计计好好好好,就就就就会会会会出出出出现现现现数数数数据据据据冗冗冗冗余余余余、数数数数据据据据更更更更新新新新异异异异常常常常、数数数数据据据据删删删删除除除除异异异异常常常常、数数数数据据据据插插插
33、插入入入入异异异异常常常常等等等等问问问问题题题题。规规规规范范范范化化化化理理理理论论论论的的的的目目目目的的的的就就就就是设计好的关系模式。是设计好的关系模式。是设计好的关系模式。是设计好的关系模式。4、物理数据库设计、物理数据库设计物理物理物理物理数据库设计是设计数据库的存储结构和物理实现方法数据库设计是设计数据库的存储结构和物理实现方法数据库设计是设计数据库的存储结构和物理实现方法数据库设计是设计数据库的存储结构和物理实现方法。 北京工商大北京工商大学学本本讲内容内容 数据模型数据模型1 1数据库应用系统的开发数据库应用系统的开发2 2 数据库设计数据库设计数据库设计数据库设计3 3
34、规范化设计规范化设计4 4北京工商大北京工商大学学1函数依函数依赖函数依函数依函数依函数依赖赖是属性之是属性之是属性之是属性之间间的一种的一种的一种的一种联联系系系系。如果一个关。如果一个关。如果一个关。如果一个关系模式系模式系模式系模式设计设计的不好,的不好,的不好,的不好,说说明在它的某些属性之明在它的某些属性之明在它的某些属性之明在它的某些属性之间间存在存在存在存在“ “不良不良不良不良” ”的函数依的函数依的函数依的函数依赖赖。设设在关系在关系在关系在关系RR中,中,中,中,XX、Y Y为为RR的两个属性子集,如的两个属性子集,如的两个属性子集,如的两个属性子集,如果每个果每个果每个果
35、每个XX值值只有一个只有一个只有一个只有一个Y Y值值与之与之与之与之对应对应,则则称属性称属性称属性称属性Y Y函数依函数依函数依函数依赖赖于属性于属性于属性于属性XX;或称属性;或称属性;或称属性;或称属性XX惟一确定属惟一确定属惟一确定属惟一确定属性性性性Y Y,记记作作作作XXY Y。如果如果如果如果XXY Y,同,同,同,同时时Y Y不包含于不包含于不包含于不包含于XX,则则称称称称XXY Y是是是是非平凡的非平凡的非平凡的非平凡的函数依函数依函数依函数依赖赖。(注:。(注:。(注:。(注:本本本本课课介介介介绍绍的是非平的是非平的是非平的是非平凡的函数依凡的函数依凡的函数依凡的函数
36、依赖赖) 规范化规范化理论的基本概念理论的基本概念北京工商大北京工商大学学2完全函数依完全函数依赖设在关系在关系R中,中,X、Y为R的两个属的两个属性子集,若性子集,若XY,且,且对于于X的任何的任何一个真子集一个真子集X,都有,都有XY,则称称Y完全函数依完全函数依赖于于X。若。若XY,则称称Y部分函数依部分函数依赖于于X。 北京工商大北京工商大学学3传递函数依函数依赖设在关系在关系R中,中,X、Y、Z为R的三个属的三个属性子集,若性子集,若XY,YZ,且,且X不依不依赖于于Y,则称称Z传递函数依函数依赖于于X。 北京工商大北京工商大学学19711971年提出年提出年提出年提出 规规范化范化
37、范化范化的基本思想是消除关系模式中的数据冗的基本思想是消除关系模式中的数据冗的基本思想是消除关系模式中的数据冗的基本思想是消除关系模式中的数据冗余,解决余,解决余,解决余,解决数据插入、更新、数据插入、更新、数据插入、更新、数据插入、更新、删删除除除除时发时发生异常生异常生异常生异常现现象。象。象。象。这这就要求关系数据就要求关系数据就要求关系数据就要求关系数据库设计库设计出来的关系模式出来的关系模式出来的关系模式出来的关系模式要要要要满满足足足足规规范的范的范的范的模式。模式。模式。模式。科德科德科德科德博士博士博士博士为为不同程度的不同程度的不同程度的不同程度的规规范化范化范化范化设设立了
38、不同的立了不同的立了不同的立了不同的标标准,称准,称准,称准,称为为范式范式范式范式(NormalForm)(NormalForm)。2.4规范化规范化设计设计北京工商大北京工商大学学数据数据库的的逻辑设计为什么要遵什么要遵循一定的循一定的规范化理范化理论?例如,要求例如,要求设计教学管理数据教学管理数据库,其关系模式,其关系模式SCDSCD如下:如下:SCDSCD(SNO,SN,AGE,DEPT,MN,CNO,SCORE(SNO,SN,AGE,DEPT,MN,CNO,SCORE) )其中,其中,其中,其中,SNOSNOSNOSNO表示学生学号,表示学生学号,表示学生学号,表示学生学号,SNS
39、NSNSN表示学生姓名,表示学生姓名,表示学生姓名,表示学生姓名,AGEAGEAGEAGE表示表示表示表示学生年学生年学生年学生年龄龄,DEPTDEPTDEPTDEPT表示学生所在的系表示学生所在的系表示学生所在的系表示学生所在的系别别,MNMNMNMN表示系主任表示系主任表示系主任表示系主任姓名,姓名,姓名,姓名,CNOCNOCNOCNO表示表示表示表示课课程号,程号,程号,程号,SCORESCORESCORESCORE表示成表示成表示成表示成绩绩。 北京工商大北京工商大学学SNOSNOSNOSNOSNSNSNSNAGEAGEAGEAGEDEPTDEPTDEPTDEPTMNMNMNMNCNO
40、CNOCNOCNOSCORESCORESCORESCORES1S1S1S1赵赵亦亦亦亦17171717计计算机算机算机算机刘刘刘刘伟伟C1C1C1C190909090S1S1S1S1赵赵亦亦亦亦17171717计计算机算机算机算机刘刘刘刘伟伟C2C2C2C285858585S2S2S2S2钱尔钱尔18181818信息信息信息信息王平王平王平王平C5C5C5C557575757S2S2S2S2钱尔钱尔18181818信息信息信息信息王平王平王平王平C6C6C6C680808080S2S2S2S2钱尔钱尔18181818信息信息信息信息王平王平王平王平C7C7C7C77070S2S2S2S2钱尔钱
41、尔18181818信息信息信息信息王平王平王平王平C5C5C5C570707070S3S3S3S3孙孙珊珊珊珊20202020信息信息信息信息王平王平王平王平C1C1C1C10 0 0 0S3S3S3S3孙孙珊珊珊珊20202020信息信息信息信息王平王平王平王平C2C2C2C270707070S3S3S3S3孙孙珊珊珊珊20202020信息信息信息信息王平王平王平王平C4C4C4C485858585S4S4S4S4李思李思李思李思男男男男自自自自动动化化化化刘刘刘刘伟伟C1C1C1C193939393SNOSNOSNOSNO表示学生学号,表示学生学号,表示学生学号,表示学生学号,SNSNSN
42、SN表示学生姓名,表示学生姓名,表示学生姓名,表示学生姓名,AGEAGEAGEAGE表示学生年表示学生年表示学生年表示学生年龄龄,DEPTDEPTDEPTDEPT表示学生表示学生表示学生表示学生所在的系所在的系所在的系所在的系别别,MNMNMNMN表示系主任姓名,表示系主任姓名,表示系主任姓名,表示系主任姓名,CNOCNOCNOCNO表示表示表示表示课课程号,程号,程号,程号,SCORESCORESCORESCORE表示成表示成表示成表示成绩绩。北京工商大北京工商大学学SCD关系分解关系分解SCSDD学生学生学生学生S(SNO,SN,AGE,DEPT)S(SNO,SN,AGE,DEPT)S(S
43、NO,SN,AGE,DEPT)S(SNO,SN,AGE,DEPT)选课选课SC(SNO,CNO,SCORE)SC(SNO,CNO,SCORE)SC(SNO,CNO,SCORE)SC(SNO,CNO,SCORE)系系系系D(DEPT,MN)D(DEPT,MN)D(DEPT,MN)D(DEPT,MN)北京工商大北京工商大学学学生学生学生学生S S S S 选课选课SCSCSCSCSNOSNOSNSNAGEAGEDEPTDEPTSNOSNOCNOCNOSCORESCORES1S1赵亦亦1717计算机算机S1S1C1C19090S2S2钱尔1818信息信息S1S1C2C28585S3S3孙珊珊2020
44、信息信息S2S2C5C55757S4S4李思李思2121自自动化化S2S2C6C68080S2S2C7C7系系系系D D D DS2S2C5C57070DEPTDEPTMNMNS3S3C1C10 0计算机算机刘刘伟S3S3C2C27070信息信息王平王平S3S3C4C48585自自动化化刘刘伟S4S4C1C19393分解后的关系模式分解后的关系模式 北京工商大北京工商大学学如何按照一定的如何按照一定的规范范设计关系模式,关系模式,将将结构复构复杂的关系分解成的关系分解成结构构简单的关系,从而把不好的关系数据的关系,从而把不好的关系数据库模式模式转变为好的关系数据好的关系数据库模式,模式,这就是
45、就是关系的关系的规范化范化。规范化范化又可以根据不同的要求而分又可以根据不同的要求而分成若干成若干级别。北京工商大北京工商大学学 范式范式把关系数据把关系数据把关系数据把关系数据库库的的的的规规范化范化范化范化过过程中程中程中程中为为不同程度的不同程度的不同程度的不同程度的规规范范范范化要求化要求化要求化要求设设立的不同立的不同立的不同立的不同标标准称准称准称准称为为范式范式范式范式(Normal FormNormal FormNormal FormNormal Form)。)。)。)。由于由于由于由于规规范化的程度不同,就范化的程度不同,就范化的程度不同,就范化的程度不同,就产产生了生了生了
46、生了不同的范式不同的范式不同的范式不同的范式。满满足最基本足最基本足最基本足最基本规规范化要求的关系模式叫范化要求的关系模式叫范化要求的关系模式叫范化要求的关系模式叫第一范式第一范式第一范式第一范式,在第一范式中在第一范式中在第一范式中在第一范式中进进一步一步一步一步满满足一些要求足一些要求足一些要求足一些要求为为第二范式第二范式第二范式第二范式,以此以此以此以此类类推就推就推就推就产产生了生了生了生了第三范式第三范式第三范式第三范式等概念。等概念。等概念。等概念。每种范式都每种范式都每种范式都每种范式都规规定了一些限制定了一些限制定了一些限制定了一些限制约约束条件。束条件。束条件。束条件。
47、北京工商大北京工商大学学第一范式第一范式第第 一一 范范 式式 ( FirstNormalForm)是是最最基基本本的的规范范形形式式,即即关关系系中中每每个个属属性性都都是是不不可可再再分分的的简单项。每个每个每个每个规规范化的关系都属于范化的关系都属于范化的关系都属于范化的关系都属于1NF1NF1NF1NF,这这也是它之所以称也是它之所以称也是它之所以称也是它之所以称为为“ “第一第一第一第一” ”的原因。的原因。的原因。的原因。 定定义 如如果果关关系系模模式式R R,其其所所有有的的属属性性均均为简单属属性性,即即每每个个属属性性都都是是不不可可再再分分的的,则称称R R属属于于第第一
48、一范范式式,简称称1NF1NF,记作作R R 1NF1NF。北京工商大北京工商大学学编号编号姓名姓名电话电话家庭电话家庭电话办公电话办公电话01004张辉春张辉春667788998733421102001陈玉茜陈玉茜672123458656633302002张一燕张一燕6789123482334212编号编号姓名姓名家庭电话家庭电话办公电话办公电话01004张辉春张辉春667788998733421102001陈玉茜陈玉茜672123458656633302002张一燕张一燕6789123482334212只要将所有的属性表示只要将所有的属性表示为不可分不可分不可分不可分的数据的数据项,转化后
49、的化后的关系即符合第一范式。关系即符合第一范式。 北京工商大北京工商大学学第二范式第二范式定定义 如如果果关关系系模模式式R R 1NF1NF,且且每每个个非非主主属属性性都都完完全全函函数数依依赖于于任任意意一一个个侯侯选关关键字字,则称称R R属属于于第第二二范范式式,简称称2NF2NF,记作作R R 2NF2NF。北京工商大北京工商大学学学号学号课程号课程号成绩成绩学分学分01002C176401002C288502002C190402002C286502002C393405007C3964带来来问题的原因是:非主的原因是:非主属性属性“学分学分”仅仅依依赖于于“课程号程号”,也就是,也
50、就是说只是只是部分依部分依赖于于主关主关主关主关键键字字字字(学(学号,号,课程号)程号),而不是完,而不是完全依全依赖。学号学号课程号课程号成绩成绩课程号课程号课程名课程名学分学分01002C176C1高等数学高等数学401002C288C2计算机文化基础计算机文化基础502002C190C3英语英语402002C286C4大学物理大学物理402002C393C5大学美育大学美育305007C396C6计算机绘图计算机绘图3北京工商大北京工商大学学第三范式第三范式定定义 如如果果关关系系模模式式R R 2NF2NF,且且每每个个非非主主属属性性都都不不传递依依赖于于R R的的任任何何候候选选
51、关关键键字字,则称称R R属属于于第第三三范式,范式,简称称3NF3NF,记作作R R 3NF3NF。如果如果如果如果R R R R 3NF3NF3NF3NF,则则R R R R也是也是也是也是2NF2NF2NF2NF。如果如果如果如果R R R R 2NF2NF2NF2NF,则则R R R R不一定是不一定是不一定是不一定是3NF3NF3NF3NF。北京工商大北京工商大学学学号学号姓名姓名院系编号院系编号院系名称院系名称院系地址院系地址01004张辉春张辉春01计算机学院计算机学院科教楼三层科教楼三层02001陈玉茜陈玉茜01计算机学院计算机学院科教楼三层科教楼三层02002张一燕张一燕03
52、会计学院会计学院科教楼十一层科教楼十一层在在该表中,关表中,关键字是学号,由于是字是学号,由于是单个关个关键字,没有部分依字,没有部分依赖的的问题,这个关系肯定属于个关系肯定属于第二范式第二范式第二范式第二范式。带带来来问题问题的原因是:关系中存在的原因是:关系中存在传递传递传递传递依依依依赖赖赖赖。北京工商大北京工商大学学学号学号姓名姓名院系编号院系编号院系院系编号编号院系名称院系名称院系地址院系地址01004张辉春张辉春0101计算机学院计算机学院科教楼三层科教楼三层02001陈玉茜陈玉茜0103会计学院会计学院科教楼十一层科教楼十一层02002张一燕张一燕0302经济学院经济学院科教楼二
53、层科教楼二层学号学号姓名姓名院系编号院系编号院系名称院系名称院系地址院系地址01004张辉春张辉春01计算机学院计算机学院科教楼三层科教楼三层02001陈玉茜陈玉茜01计算机学院计算机学院科教楼三层科教楼三层02002张一燕张一燕03会计学院会计学院科教楼十一层科教楼十一层北京工商大北京工商大学学BCNFBCNF定定义 如如果果关关系系模模式式的的所所有有属属性性(包包括括主主属属性性和和非非主主属属性性)都都不不传递依依赖于于R R的的任任何何侯侯选关关键字字,则称称R R属于属于BCNFBCNF,记作作R R BCNFBCNF。如果如果如果如果R R R R 3NF3NF3NF3NF,则则
54、R R R R也是也是也是也是2NF2NF2NF2NF。如果如果如果如果R R R R 2NF2NF2NF2NF,则则R R R R不一定是不一定是不一定是不一定是3NF3NF3NF3NF。北京工商大北京工商大学学 关系关系模式模式规范化的目的和原范化的目的和原则一个关系只要其分量都是不可分的数据一个关系只要其分量都是不可分的数据一个关系只要其分量都是不可分的数据一个关系只要其分量都是不可分的数据项项,就,就,就,就可称作可称作可称作可称作规规范化的关系,但范化的关系,但范化的关系,但范化的关系,但这这只是最基本的只是最基本的只是最基本的只是最基本的规规范化范化范化范化。规规范化范化范化范化的
55、的的的目的目的目的目的就是使就是使就是使就是使结结构合理,消除存构合理,消除存构合理,消除存构合理,消除存储储异常,异常,异常,异常,使数据冗余尽量小,便于插入、使数据冗余尽量小,便于插入、使数据冗余尽量小,便于插入、使数据冗余尽量小,便于插入、删删除和更新。除和更新。除和更新。除和更新。 北京工商大北京工商大学学规范范化化的的基基本本原原则就就是是遵遵从从概概念念单一一化化“一一事事一一地地”的的原原则,即即一一个个关关系系只只描述一个描述一个实体或者体或者实体体间的的联系。系。若若多于一个多于一个实体,就把它体,就把它“分离分离”出来。出来。因因此此,所所谓规范范化化,实质上上是是概概念念
56、的的单一化一化,即,即一个关系表示一个一个关系表示一个实体体。北京工商大北京工商大学学现实现实中的中的数据数据库库系系统统是否是否都遵循都遵循BCNFBCNF范式范式?北京工商大北京工商大学学注意注意规规范化范化范化范化的的的的优优点是减少了数据冗余,点是减少了数据冗余,点是减少了数据冗余,点是减少了数据冗余,节约节约了存了存了存了存储储空空空空间间,同,同,同,同时时加快了增、加快了增、加快了增、加快了增、删删、改的速度,但、改的速度,但、改的速度,但、改的速度,但在数据在数据在数据在数据查询查询方面,需要方面,需要方面,需要方面,需要进进行关系模式之行关系模式之行关系模式之行关系模式之间间
57、的的的的连连接操作,因而影响接操作,因而影响接操作,因而影响接操作,因而影响查询查询的速度的速度的速度的速度。因此因此因此因此,并不一定要求全部模式都达到,并不一定要求全部模式都达到,并不一定要求全部模式都达到,并不一定要求全部模式都达到BCNFBCNF,有,有,有,有时时故意保留部分冗余可能更方便数据故意保留部分冗余可能更方便数据故意保留部分冗余可能更方便数据故意保留部分冗余可能更方便数据查查询询。北京工商大北京工商大学学实例:例:“教学管理系教学管理系统”的开的开发一、一、系系统规划划阶段段1 1提出开提出开提出开提出开发请发请求求求求某大学是一所多科性大学,学校某大学是一所多科性大学,学
58、校某大学是一所多科性大学,学校某大学是一所多科性大学,学校设设有有有有经济经济学院、学院、学院、学院、化学与化学与化学与化学与环环境工程学院、机械自境工程学院、机械自境工程学院、机械自境工程学院、机械自动动化学院、信息工化学院、信息工化学院、信息工化学院、信息工程学院、程学院、程学院、程学院、计计算机学院、商学院、会算机学院、商学院、会算机学院、商学院、会算机学院、商学院、会计计学院等学院等学院等学院等1111个个个个学院。学校学院。学校学院。学校学院。学校现现有教有教有教有教职职工近工近工近工近14001400人,学生人,学生人,学生人,学生1800018000多人。多人。多人。多人。随着信
59、息量的增加,教学管理工作越来越繁随着信息量的增加,教学管理工作越来越繁随着信息量的增加,教学管理工作越来越繁随着信息量的增加,教学管理工作越来越繁杂杂,手工管理的弊端日益手工管理的弊端日益手工管理的弊端日益手工管理的弊端日益显显露。露。露。露。为为了提高教学管理的了提高教学管理的了提高教学管理的了提高教学管理的质质量和工作效率,量和工作效率,量和工作效率,量和工作效率,为为了及了及了及了及时时提供信息,提供信息,提供信息,提供信息,实现实现教学教学教学教学管理的信息化,学校委托某管理的信息化,学校委托某管理的信息化,学校委托某管理的信息化,学校委托某软软件开件开件开件开发发公司开公司开公司开公
60、司开发发“ “教教教教学管理系学管理系学管理系学管理系统统” ”。北京工商大北京工商大学学2可行性分析研究可行性分析研究可行性分析包括两部分内容:分可行性分析包括两部分内容:分析建立新的管理信息系析建立新的管理信息系统的必要的必要性和可能性。可能性主要包括性和可能性。可能性主要包括经济可行性、技可行性、技术可行性和社会可可行性和社会可行性。行性。北京工商大北京工商大学学二、系二、系统分析分析阶段段1 1学校机构学校机构学校机构学校机构组织组织2 2教学管理工作流程教学管理工作流程教学管理工作流程教学管理工作流程3 3教学管理数据流程教学管理数据流程教学管理数据流程教学管理数据流程图图教教师学生
61、学生学生学生选课各各类查询相关相关人人员北京工商大北京工商大学学三、三、系系统设计阶段段1功能模功能模块设计教教师模模块学生模学生模块班班级模模块院系模院系模块课程模程模块教学管理系教学管理系统学学生生基基本本信信息息管管理理学学生生选课信信息息管管理理成成绩登登记统计查询教教师基基本本信信息息管管理理教教师授授课信信息息管管理理工工作作量量统计查询班班级基基本本信信息息管管理理班班级信信息息查询课程程信信息息管管理理课程程信信息息查询教教学学计划划管管理理教教学学任任务管管理理各各类查询统计报表表打打印印北京工商大北京工商大学学2数据数据库设计确定确定实体体确定确定实体的属性体的属性学院代学院代码学院学院简介介学院地址学院地址学院名称学院名称院院长姓名姓名学院学院电话学院学院教教师手机手机照片照片E-mail办公公电话性性别姓名姓名学学历职称称系部系部编号号教教师编号号北京工商大北京工商大学学确定确定实体体间的的联系系类型型1n系部系部聘任聘任教教师1n学院学院设置置系部系部mn教教师讲授授课程程1n系部系部有有班班级1n班班级有有学生学生mn学生学生选修修课程程局部局部E-R图北京工商大北京工商大学学mnn11n系部系部学院学院设置置nm1n1课程程聘任聘任教教师讲授授选修修n班班级有有有有学生学生整体整体E-R图返回返回返回返回