MySQL数据库应用(微课版)课件 项目1:部署数据库开发环境_第1页
MySQL数据库应用(微课版)课件 项目1:部署数据库开发环境_第2页
MySQL数据库应用(微课版)课件 项目1:部署数据库开发环境_第3页
MySQL数据库应用(微课版)课件 项目1:部署数据库开发环境_第4页
MySQL数据库应用(微课版)课件 项目1:部署数据库开发环境_第5页
已阅读5页,还剩95页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

项目1:部署数据库开发环境数据库应用任务1数据模型的规划与设计——数据库概念模型设计

教学目标

素质目标

知识目标1线上线下结合,引导学习方式,培养自主学习能力;2培养学生积极探索、勇于创新的科学素养;3养成小组沟通协作共同学习,解决问题能力和团队合作精神;4课程思政内容:团队协作;对社会主义价值观的认同感1能利用讲授的课程学习方法学习本课程;2能理解概念模型的含义,设计方法;3能熟练正确绘制E-R图;4会将E-R图转换为关系模式;

能力目标1能理解概念模型及分析设计;2能将概念模型表现为E-R图;

教学重点绘制E-R图实体间的联系,并确定联系的属性;绘制完整的E-R图

教学难点绘制E-R图前三要素的确定;绘制E-R图实体间的联系,并确定联系的属性类别教学重难点知识储备1.数据库系统的基本概念(知识储备)(一)信息(Information)

美国信息管理专家霍顿(F.W.Horton)给信息下的定义是:“信息是为了满足用户决策的需要而经过加工处理的数据。”根据对信息的研究,人们普遍认同的概念是:信息是对客观世界中各种事物的运动状态和变化的反映,是客观事物之间相互联系和相互作用的表征,表现的是客观事物运动状态和变化的实质内容。简单地说,信息是经过加工的数据,或者说,信息是数据处理的结果。4数据库概念模型设计知识储备1.数据库系统的基本概念(知识储备)(二)数据(Date)

数据是指对客观事件进行记录并可以鉴别的符号。在计算机科学中,数据是指所有能输入到计算机并被计算机程序处理的符号介质的总称。信息与数据既有联系,又有区别。数据是信息的表现形式和载体,可以是符号、文字、数字、语音、图像、视频等。而信息是数据的内涵,信息是加载于数据之上,对数据进行有含义的解释。数据和信息是不可分离的,信息依赖数据来表达,数据则可以生动具体地表达出信息,并且数据只有在表达了某种信息之后才有实际意义。互动1:数据与信息的区别,举例说明;(请1组同学回答)5数据库概念模型设计

知识储备1.数据库系统的基本概念(知识储备)(三)数据库(DateBase,DB)

数据库是长期储存在计算机内、有组织的、可共享的数据集合。数据库中的数据指的是以一定的数据模型组织、描述和储存在一起、具有尽可能小的冗余度、较高的数据独立性和易扩展性的特点并可在一定范围内为多个用户共享。数据库的特点:数据尽可能不重复,以最优方式为某个特定组织的多种应用服务,其数据结构独立于使用它的应用程序,对数据的添加、删除、修改、查询由统一软件进行管理和控制。从发展的历史看,数据库是数据管理的高级阶段,它是由文件管理系统发展起来的。互动2:请列举出数据库在哪些场景下应用,至少举3个场景(请2组同学回答)6数据库概念模型设计

知识储备1.数据库系统的基本概念(知识储备)(四)数据库管理系统(DataBaseManagementSystem,DBMS)

数据库管理系统是位于用户与操作系统之间的管理数据库的软件。其主要功能是:数据定义功能、数据操纵功能、数据库的运行管理、数据库的建立和维护功能。常见的DBMS有MySQL、SQLServer、Oracle、DB2等。7数据库概念模型设计

知识储备1.数据库系统的基本概念(知识储备)(五)数据库系统(DataBaseSystem,DBS)数据库系统一般由3个部分组成。

(1)硬件:构成计算机系统的各种物理设备,包括存储所需的外部设备。硬件的配置应满足整个数据库系统的需要。

(2)软件:包括操作系统、数据库管理系统及数据库和应用程序。数据库管理系统是在操作系统的支持下,在其中建立数据库,并通过应用程序对数据库进行查询调用,从而完成所需要的数据管理任务。

(3)人员:主要包括系统分析员、数据库设计人员、编程人员、数据库管理员和用户。8数据库概念模型设计

知识储备1.数据库系统的基本概念(知识储备)(六)数据模型

数据模型是数据库中数据的存储结构,是对现实世界数据特征的抽象和对客观事物及其联系的数据描述,在数据库中用它来抽象、表示和处理现实世界中的数据和信息。数据模型按不同的应用层次分成三种类型:概念模型、逻辑模型和物理模型。9数据库概念模型设计知识储备2.数据库系统的特点(知识储备)

采用数据库系统实现对数据的管理,与人工管理和文件系统管理相比具有实现数据共享、减少数据冗余度、数据独立性、数据的集中控制、数据一致性、数据安全性和故障恢复保障的特点。(一)实现数据共享

数据共享包含所有用户可同时存取数据库中的数据,也可以用各种方式通过接口使用数据库,并提供数据共享。10数据库概念模型设计知识储备2.数据库系统的特点(知识储备)

(二)减少数据冗余度

同文件系统相比,由于数据库实现了数据共享,从而避免了用户各自建立应用文件。可减少大量的重复和冗余数据。(三)数据独立性

数据的独立性包括逻辑独立性(逻辑结构和应用程序相互独立)和物理独立性(数据物理结构的变化不影响数据的逻辑结构)。

11数据库概念模型设计知识储备2.数据库系统的特点(知识储备)

(四)数据的集中控制

文件管理方式中,数据处于一种分散的状态,不同的用户或同一用户在不同处理中其文件之间毫无关系。利用数据库可对数据进行集中控制和管理,并通过数据模型表示各种数据的组织以及数据间的联系。

(五)数据一致性

数据一致性是指采用数据库系统对数据进行管理之后,可以避免以往采用人工管理和文件系统管理时可能存在数据被重复存储、分别修改从而导致数据的不一致性。

互动3:举例说明“数据一致性”(请3组同学回答)12数据库概念模型设计知识储备2.数据库系统的特点(知识储备)

(六)数据安全性

数据的安全性是指对数据的保护,使所有用户按照规定对数据进行使用和访问,从而避免不合法的使用造成数据的泄密和破坏。(七)故障恢复保障

由数据库管理系统提供一套方法,可及时发现故障并修复,从而防止数据被破坏。数据库系统能尽快恢复数据库系统运行时出现的故障,可能是物理上或是逻辑上的错误。比如对系统的误操作造成的数据错误等。

13数据库概念模型设计知识储备3.概念模型(知识储备)

要将现实世界转变为机器能够识别的形式,必须经过两次抽象:第一次抽象,将现实世界抽象为信息世界,这一过程简单理解就是将人们的感知转变为语言描述的信息,第一次抽象完成了概念模型的设计;第二次抽象,将信息世界转变为机器世界,实现的是概念模型向逻辑模型的转换,这一过程简单理解就是将语言描述的信息转变为计算机能识别的数据形式。概念模型是指按用户的观点来对数据和信息建模,主要用于数据库设计。概念模型用于信息世界的建模,是数据库设计人员进行数据库设计的有力工具,也是数据库设计人员和用户之间进行交流的语言。

14数据库概念模型设计知识储备3.概念模型(知识储备)

概念模型的表示方法很多,其中最著名最为常用的是P.P.S.Chen于1976年提出的实体-联系方法(Entity-RelationshipApproach),该方法是描述现实世界概念结构模型的有效方法,简称为E-R方法,也称为E-R概念模型。E-R概念模型采用实体-联系图(E-R图)来描述现实世界。E-R图是表现概念模型的方法,是用于抽象现实世界的有力工具,通过画E-R图将实体以及实体间的联系刻画出来。构成E-R图的3个基本要素是实体、属性和联系。

15数据库概念模型设计知识储备3.概念模型(知识储备)

(一)实体(Entity)

一般认为,从客观上可以相互区分的事物就是实体,实体可以是具体的人和物,也可以是抽象的概念与联系。在E-R图中,采用实体名及其属性名集合来抽象和刻画同类实体。如学生张三是一个实体,一门课程也是一个实体。(二)属性(Attribute)

实体所具有的某种特性,一个实体可由若干个属性来刻画。属性不能脱离实体,属性是相对实体而言的。如学生的姓名、学号、性别都是属性。

16数据库概念模型设计知识储备3.概念模型(知识储备)

(三)联系(Relationship)

联系也称关系,信息世界中反映实体内部或实体之间的关联。实体内部的联系通常是指组成实体的各属性之间的联系;实体之间的联系通常是指不同实体之间的关联关系。联系的类型主要有3种,一对一联系(1

:

1)、一对多联系(1

:

N)和多对多联系(M

:

N)。(1)一对一联系(1

:

1)

假设有两个实体集A和B,如果A中最多有一个实体与B中的一个实体有联系,同样B中也最多有一个实体与A中的一个实体有联系,则称A和B具有一对一的联系。17数据库概念模型设计知识储备3.概念模型(知识储备)

(2)一对多联系(1

:

N)

假设有两个实体集A和B,若A中的每一个实体在B中有多个实体与之对应,反之B中每一个实体在A中至多有一个实体与之对应,则称A和B具有一对多的联系。

如某学校系部和教师,一个系部可以有多名教师,但一名教师只能属于一个系部,则系部和教师就是一对多的联系。一个专业中有若干名学生,而每个学生只在一个专业中学习,则专业与学生之间具有一对多联系。(3)多对多联系(M

:

N)

对于两个实体集A和B,若A中每一个实体在B中有多个实体与之对应,反之亦然,则称A与B具有多对多联系。

互动4:对三种联系类型,分别举一个例(请4组同学回答)18数据库概念模型设计任务实施【任务1】绘制E-R图的实体

分析:在“学生选修课程”中,实体有两个:学生和课程。实体在E-R图中通用的表示方式是用矩形框来表示,并在框内写上实体名。

19数据库概念模型设计任务实施【任务2】绘制E-R图的实体属性

分析:学生实体的属性包括:学号、姓名、性别、出生日期、专业名、所在学院、联系电话、总学分和备注;课程实体的属性包括:课程号、课程名、授课教师、开课学期、学时和学分。属性在E-R图中通用的表示方式是用椭圆来表示,并在椭圆内写上属性名,并用下画线标注关键字,然后用无向边把实体和属性联系起来。

20数据库概念模型设计任务实施【任务2】绘制E-R图的实体属性

21数据库概念模型设计任务实施【任务3】绘制E-R图实体间的联系,并确定联系的属性。

分析一般是通过某个动作来实现两个实体间的联系,所以对联系命名时,一般应用动词来命名。在“学生选修课程”中,“学生”“课程”两个实体间的联系是“选修”,根据实际情况:一个学生可以选修多门课程,同时,一门课程也可以由多个学生选修,因此“学生”“课程”两个实体的联系类型是多对多联系(m

:

n)。用菱形表示实体间的联系,在菱形内写上联系名,然后用无向边与相关实现连接起来,在无向边上注明联系的类型。22数据库概念模型设计任务实施【任务3】绘制E-R图实体间的联系,并确定联系的属性。

23数据库概念模型设计任务实施【任务4】绘制完整的E-R图

分析:将实体、属性和联系组合起来形成完整的E-R图。24数据库概念模型设计任务拓展【拓展1】绘制班级与班长的E-R图

分析:一个班级只有一个正班长,而一个正班长属于一个班级,则班级与正班长之间具有(1:1)联系。班级的属性包括:编号,学院,年级,专业名;正班长的属性包括:姓名,学号。它们间的联系是一个“属于”关系。25数据库概念模型设计任务拓展【拓展2】绘制班级与学生的E-R图

分析班级与学生,一个班级有多名学生,但一名学生只能属于一个班级,则班级和学生就是(1:n)的联系。学生的属性有学号,姓名,性别,专业名,学院,出生日期,电话和总学分等。26数据库概念模型设计任务拓展互动5:绘制学习管理系统的E-R图(请5组同学回答)

描述:在学生学习管理系统中:

每个学生选修若干门课程,且每个学生每选一门课只有一个成绩,学生选修课程就是(m:n)的联系,该联系名为“选修”,有一个成绩属性;每个教师只担任一门课的教学,一门课由若干教师任教,教师讲授课程就是(1:n)的联系,该联系名为“讲授”;一位教师可以指导多个学生,一个学生在某个时间和地点只能被一位教师指导,教师指导学生就是(1:n)的联系,该联系名为“指导”,有两个属性:时间和地点;整个系统有三个实体:学生、课程、教师。学生实体的属性有:学号、姓名、性别、专业名;教师属性有:教工号、教师姓名、职称;“课程”属性有:课程号、课程名。27数据库概念模型设计任务拓展互动5:绘制学习管理系统的E-R图

28数据库概念模型设计复习:1. 概念模型中的基本概念2. 数据库概念模型设计;3. 绘制E-R图:用矩形表示实体、椭圆表示属性、菱形表示联系;4. 联系类型、关键字的确定29数据库概念模型设计作业:1.绘制E-R图:情景描述:设有商店和顾客两个实体,商店属性:商店编号、商店名、地址、电话;“顾客”属性:顾客编号、姓名、地址、年龄、性别。假设一个商店有多个顾客购物,一个顾客可以到多个商店购物,顾客每次去商店购物有一个消费金额和日期。要求画出E-R图,并注明属性和联系类型。2.预习数据库逻辑模型设计,看微课视频1。30数据库概念模型设计THANKYOU!项目1:部署数据库开发环境数据库应用任务1数据模型的规划与设计——数据库逻辑模型设计

教学目标

素质目标

知识目标1

线上线下结合,引导学习方式,培养自主学习能力;2

培养学生积极探索、勇于创新的科学素养;3

养成小组沟通协作共同学习,解决问题能力和团队合作精神;4

思政内容:围绕关系模式优化,树立数据库开发的质量意识与工匠精神。1能理解关系模型相关的概念;2能熟练掌握关系的性质;3理解关系的关整性规则;4会将E-R图转化为关系模型

能力目标1

能将关系模型中主键、外键、主表、从表四个概念理解透彻;2

能将E-R图转化为关系模型;

教学重点将E-R图转化为关系模型时,如何确定主键、外键、主表与从表

教学难点理解主键、外键、主表与从表在数据表设计中的应用教学重难点知识储备1.关系模型的基本概念

关系模型中数据的逻辑结构是一张二维表,它由行和列组成。下面以表为例说明关系模型的基本概念。表1.1

学生表数据库逻辑模型设计35学号姓名性别出生日期专业名所在学院联系电话总学分2020110101朱博男2002-10-15云计算计算机学ull2020110102龙婷婷女2002-11-05云计算计算机学ull2020110201曹科梅女2002-06-09信息安全计算机学ull2020110301李娟女2002-08-24网络工程计算机学ull(一)关系(Relation)一个关系就是一张二维表,每个关系都有一个关系名,如表1.1所示的关系,其名称为学生信息表。(二)元组(Tuple)元组也称记录,关系中的每一行对应一个元组,如表1.1就是由4个元组组成的。(三)属性(Attribute)二维表的一列即为一个属性,每个属性的名称为属性名。36数据库逻辑模型设计互动1:在二维表中的能否存在相同的属性?请举例说明。37数据库逻辑模型设计(四)域(Domain)属性的取值范围称为域。如“性别”这个属性,其取值范围只能是男或女。(五)关系模式(RelationMode)对关系信息结构和语义的描述称为关系模式。关系模式用关系名、属性名及其主键来表示,如学生表的关系模式可表示为:学生(学号、姓名、性别、出生日期、专业名、所在学院、联系电话、总学分),其中学号为主键。关系和关系模式的联系与区别:关系模式是对关系结构的描述,由所有属性组成,是静态的、稳定的。关系是二维表格,既包含了关系模式中的结构,即属性,又包含了属性值。由于属性值在关系操作中可能会不断更新,所以关系是动态的。38数据库逻辑模型设计39数据库逻辑模型设计互动2:域的作用是什么?互动3:关系和关系模式有什么联系?它们的不同点是什么?(六)候选键(CandidateKey)在一个关系中,如果某一个属性或属性的组合能唯一标识一个元组,则称该属性或属性的组合为候选键,候选键又称为候选码,可简称为键或码。如在学生情况表中,如果姓名没有重名的情况下,学号和姓名都可以作为候选键。(七)主键(PrimaryKey)用户选定的用于标识元组的候选键称为主键,主键又称为主码。如在学生情况表,在学号和姓名两个候选键中选择学号用为元组的标识,则学号就称为主键。主键的属性值不能有空值(null)和重复值。40数据库逻辑模型设计41数据库逻辑模型设计互动4:主键的取值有什么要求?(八)主属性(PrimeAttribute)和非主属性(Non-PrimeAttribute)构成候选键的属性称为主属性,如学号和姓名是主属性;非候选键的属性称为非主属性,如性别、出生日期、专业名、所在学院、联系电话和总学分。42数据库逻辑模型设计学号姓名性别出生日期专业名所在学院联系电话总学分2020110101朱博男2002-10-15云计算计算机学ull2020110102龙婷婷女2002-11-05云计算计算机学ull2020110201曹科梅女2002-06-09信息安全计算机学ull2020110301李娟女2002-08-24网络工程计算机学ull学生表(九)外键(ForeignKey)一个关系的某个属性不是该关系的主键,或只是该关系主键的组成部分,但却是另一个关系的主键,则这样的属性称为该关系的外键。外键用于实现表与表之间的联系。

在学生表中,学号是主键;在成绩表中的学号和课程号是主键(由两个属性组成),成绩表中的学号就是成绩表的外键,通过学号可以使学生表和成绩表建立关联关系。43学号课程号成绩学分202011010110183220201101011026452020110102102675数据库逻辑模型设计成绩表课程表44数据库逻辑模型设计互动5:在一个关系表中,某一列既可作为主键,又作为外键吗?(十)主表和从表在通过外键相关联的两个表中,主表是指以另一张表的外键作为主键的表,从表是指外键所在的表。如在学生表和成绩表中,成绩表是外键(学号)所在的表,是从表;学生表是以成绩表的外键(学号)作为主键,是主表。45数据库逻辑模型设计知识储备2.关系的性质

关系可以用二维表来表示,但在关系数据库中,关系必须是规范化的,关系具有如下的性质:每个关系只有一种关系模式;同一属性的属性值具有同质性,即取值具有相同的意义,如性别这个属性,取值为男或女,其意义都是用于表示性别;同一个关系中属性名不能重复;46数据库逻辑模型设计知识储备2.关系的性质同一个关系中不能有相同的元组,即二维表的不同行之间不能出现属性值都相同的情况;关系中行的顺序无关性,即行的次序可以任意交换,并不影响数据的意义;关系中列的顺序无关性,即列的次序可以任意交换,并不影响数据的意义;关系中的每个属性必须是不可分割的。关系所对应的关系表必须是二维表,不能是复合表。47数据库逻辑模型设计知识储备2.关系的性质成绩属性可以分割为云操作系统和数据库两个成绩,这个表是复合表,不是二维表,这样的关系在数据库中不允许存在。复合表:将上表进行重新设计,形成如下表所示就可以了。二维表:48姓名所在学院成绩云操作系统数据库朱博计算机学院8683龙婷秀计算机学院6169姓名所在学院云操作系统数据库朱博计算机学院8683龙婷秀计算机学院6169数据库逻辑模型设计知识储备3.关系的完整性规则

关系的完整性规则是对关系的约束条件,通过这些约束条件可以保证数据库中数据的合理性、正确性和一致性。关系模型中包括3类完整性约束:实体完整性、参照完整性和域完整性。其中,实体完整性和参照完整性是关系模型中必须满足的完整性约束条件,由数据库系统自动支持,域完整性是用户在应用数据库时对具体领域中所定义的约束条件。49数据库逻辑模型设计知识储备3.关系的完整性规则(一)实体完整性实体完整性要求组成关系的任意一个元组,其主键的值不能为空值或重复值。在现实世界中的实体是可确定、可区分的,它们具有某种唯一性标识,这个标识在关系模式中,就是主键,用主键可以唯一地标识该实体,如果主键取空值或重复值,就表示存在不可确定的,或是不可区分的实体,这是不允许的。如关系模式“学生表(学号、姓名、性别、出生日期、专业名、所在学院、联系电话、总学分)”中,主键是学号,则学号的属性值不能为取空值,也不能取重复值。每个学生都应该有一个学号,所以学号不能为空值;同时也不能把一个学号分配给不同的学生,因此学号不能取重复值。50数据库逻辑模型设计知识储备3.关系的完整性规则(二)参照完整性参照完整性规则也称为引用完整性规则,这条规则要求“不引用不存在的实体”,是要求被从表中外键所参照的主表中的主键必须是客观存在的。由于实体之间往往存在着某种联系,这种实体间的联系在关系模式中表现为属性的参照关系。如在学生表、课程表、成绩表的关系模式中,存在着属性的参照:

成绩表的学号和课程号是外键,其参照的主键是学生表的“学号”和课程表的“课程号”,根据参照完整性规则,要求成绩表的“学号”必须在学生表中已经存在,“课程号”必须在课程表中已经存在;另外,从表中外键的取值也可以为空值。51数据库逻辑模型设计知识储备3.关系的完整性规则(三)域完整性域完整性也称为用户自定义完整性,是用于对属性值内容的规定。域完整性要求该属性只能取符合条件要求的取值,从而保证数据库数据的合理性。如成绩属性,用户可根据实际需要,规定其取值范围是0~100分,不在此范围的取值被认为是不合法的数据;同样,性别属性,规定其取值只能是男或女。互动2:设置成绩的取值范围在0-100之间,属于什么完整性规则?成绩表中的学号取值必须要在学生表中有这个学号存在,属于什么完整性规则?52数据库逻辑模型设计知识储备4.E-R图转化为关系模型在概念模型的设计中得到的E-R图是由实体、属性和联系三部分组成的,而关系模型设计的结果是一组关系模式的集合,所以要将E-R图转化为关系模型,实际上就是将实体、属性和联系转换成为关系模式。转换遵循的原则如下。

原则一:每个实体转换成为一个关系其中实体的属性就是关系的属性,属性在二维表中用列名来表示,实体的主键就是关系的主键。53数据库逻辑模型设计知识储备4.E-R图转化为关系模型原则二:每个联系转换成为一个关系关系的属性由与该联系相连的实体的主键和该联系自身的属性组成。关系的主键的确定方法:(1)对于1

:

1的联系,每个实体的主键均是关系的候选键;(2)对于1

:

n的联系,关系的主键是n端实体的主键;(3)对于m

:

n的联系,关系的主键是两端实体主键的组合。原则三:有相同主键的关系可以合并为一个关系对于1:1的联系构成的关系,可以和与该联系相连的任一个实体合并成一个关系,对于1:n的联系构成的关系,可以和n端实体合并成一个关系。54数据库逻辑模型设计55知识储备4.E-R图转化为关系模型互动3:指出图中各联系的主键及属性。数据库逻辑模型设计任务实施【任务1】将“学生选修课程E-R图”转变成关系模式分析:根据E-R图转化为关系模型的原则,在图1-6所示的E-R图中,有两个实体和一个联系,在转换为关系模型时,可以转换为三个关系模式:学生表、课程表和成绩表。1)学生(学号、姓名、性别、出生日期、专业名、所在学院、联系电话、总学分)主键:学号;2)课程(课程号、课程名、授课教师、开课学期、学时、学分)主键:课程号;3)成绩(学号、课程号、成绩、学分)主键:学号+课程号;外键:学号、课程号。56数据库逻辑模型设计任务实施【任务2】将课程表的关系模式转化为关系分析:当关系模式已有具体数据时,就可以转化为关系。课程表关系如下表所示。57数据库逻辑模型设计课程号课程名授课教师开课学期学时学分101计算机文化基础李平1322102计算机硬件基础童华1805103程序设计基础王印2644复习:1.关系模型的基本概念2.关系的性质3.关系的完整性规则4.E-R图转化为关系模型58数据库逻辑模型设计作业:1.讨论主键与外键的区别;2.讨论如何识别主表与从表;3.实体完整性规则的要求是什么?4.如何理解参照完整性规则在对表数据的约束?59数据库逻辑模型设计THANKYOU!项目1:部署数据库开发环境数据库应用任务1数据模型的规划与设计——关系模式规范化

教学目标

素质目标

知识目标1

线上线下结合,引导学习方式,培养自主学习能力;2

培养学生积极探索、勇于创新的科学素养;3

养成小组沟通协作共同学习,解决问题能力和团队合作精神;4

思政内容:培养学生好的职业道德与职业素养1能理解关系模式规范化的作用;2了解第一范式满足的条件;3掌握如何将第一范式转化为第二范式;4掌握如何将第二范式转化为第三范式;

能力目标1能识别一个不好的关系模式具有哪些缺点;2能将具有缺陷的关系模式转化成为可用的关系模式;

教学重点将第一范式转化为第二范式;将第二范式转化为第三范式

教学难点在范式转化时,如何理解、识别并解决“属性完全依赖”,“传递依赖”的问题教学重难点知识储备在关系数据库中,对同一个问题,数据库的逻辑设计结果不是唯一的。为进一步提高数据库应用系统的性能,有必要对关系模式进一步修改,调整数据模型的结构,这需要以规范化理论为指导,对关系模式进行规范化。设计一个学生管理数据库,需要该数据库中包括的信息有:学号、姓名、性别、出生日期、系名、系主任、课程号和成绩。如果将这些信息包含在一个关系中,则学生关系模式S为:S(学号、姓名、性别、出生日期、系名、系主任、课程号、成绩)在学生关系模式S中,关系模式的主键为(学号、课程号)。各属性之间的关系为:一个系有若干个学生,但一个学生只属于一个系且只有一个系主任,但一个系主任可以兼任几个系的主任;一个学生可以选修多门课程,每门课程可以被多个学生选修;每个学生的每门课程只有一个成绩。关系模式规范化64知识储备学生关系模式S的实例

关系模式规范化65学号姓名性别出生日期系名系主任课程号成绩2020110101朱军男2002-10-15计算机系武春岭101772020110101朱军男2002-10-15计算机系武春岭102832020110101朱军男2002-10-15计算机系武春岭103822020110101朱军男2002-10-15计算机系武春岭105692020110102龙婷秀女2002-11-05计算机系武春岭101642020110102龙婷秀女2002-11-05计算机系武春岭102582020110102龙婷秀女2002-11-05计算机系武春岭104682020110103张庆国男2003-01-09计算机系武春岭101692020110103张庆国男2003-01-09计算机系武春岭103882020110103张庆国男2003-01-09计算机系武春岭105772020120101李成男2002-07-09机电系王春强201782020120101李成男2002-07-09机电系王春强20363知识储备从上表存放的数据可以看出,该关系具有以下缺陷:(1)数据冗余。系名和系主任的存储次数等于该系学生选修课程的人次;(2)插入异常。这个关系模式的主键是(学号、课程号),当一个系里的学生如果没有选修课程时,则课程号无值,导致该生的所有信息将无法插入数据库中;(3)删除异常。如果在某个系的学生全部毕业又没招新生的情况下,删除已毕业学生的信息时,将会使系名和系主任的信息也随之删除,但由于这个系仍然存在,却又找不到该系的信息,即会出现删除异常;(4)更新异常。当要更改某个学生的姓名时,则必须搜索出包含该姓名的每条记录,并对其姓名逐一修改,修改量大,如果某条记录漏改了,则会造成数据不一致,即出现更新异常。

关系模式规范化66知识储备针对上表所示的关系具有的上述缺陷应该如何解决呢?就要利用规范化理论对关系模式进行规范化。满足特定要求的关系模式称为范式,按其规范化程度从低到高可分为5级范式(NormalForm),分别为1NF、2NF、3NF(BCNF)、4NF和5NF。规范化程度较高的范式是较低范式的子集,一个低一级范式的关系模式,通过分解可以转换为若干个高一级范式的关系模式,这个过程称为关系的规范化。关系规范化的基本方法是逐步消除关系模式中不恰当的数据依赖,使关系模式达到某种程度的分离,用一个关系来表达一事或一物。

关系模式规范化67知识储备1.第一范式(1NF)1NF:如果关系模式R中不包含多值属性,则R满足第一范式,记为R∈1NF。第一范式要求不能在表中嵌套表,是关系模式要遵循的最基本要求,数据库中所在的关系模式必须满足第一范式。例如,前面的复合表所对应的关系模式不满足1NF,因为其成绩属性中包含了多门课程的成绩,属于表中嵌套表的情况,只有将复合表中的成绩属性拆开,形成二维表的形式,这样就不存在表中嵌套表的情况了,其对应的关系模式就满足1NF了。

关系模式规范化68知识储备1.第一范式(1NF)互动1:什么样的表才满足第一范式?

关系模式规范化69知识储备2.第二范式(2NF)

关系模式仅仅满足1NF是不够的,尽管学生关系模式满足1NF,根据前面的分析,这个关模式存在数据冗余、插入异常、删除异常和更新异常的缺陷,所以需要对该关系模式进一步规范化,使之达到更高级别的范式。2NF:如果关系模式R满足第一范式,且每个非键属性完全函数依赖于R的键属性,则R满足第二范式,记为R∈2NF。在2NF中解决了插入异常问题。

关系模式规范化70知识储备2.第二范式(2NF)

例如,学生关系模式S(学号,姓名,性别,出生日期,系名,系主任,课程号,成绩)不是2NF。因为该关系模式的主键为(学号,课程号),对于非键属性姓名和系名来说,它们只依依赖于学号,而与课程号无关,因此关系模式S存在部分函数依赖。解决的办法是将关系模式进行分解,使每个非键属性完全函数依赖于键属性。分解的方法是采用投影分解法。(1)把关系模式中对键完全函数依赖的非键属性与决定它们的键放在一个关系模式中。(2)把对键部分函数依赖的非键属性和决定它们的键放在一个关系模式中。(3)检查分解结果,如果仍有不满足2NF的,则按前两步骤继续分解。

关系模式规范化71知识储备3.第三范式(3NF)

3NF:如果关系模式R满足第二范式,且没有一个非键属性传递依赖于键,则称R满足第三范式,记为R∈3NF。在3NF中解决了删除异常问题。例如,学生和系关系模式S-D(学号,姓名,性别,出生日期,系名,系主任)满足第二范式,由于系名由学号决定,系主任是由系名来决定,即存在系主任传递依赖于学号,因此S-D不满足3NF,它存在删除异常问题。解决的方法同样是对S-D进行投影分解。(1)把直接对键函数依赖的非主键属性与决定它们的键放在一个关系模式中。(2)把造成传递依赖的属性和被该属性决定的其他属性放在一个关系模式中。(3)检查分解结果,如果仍有不满足3NF的,则按前两步骤继续分解。3NF是一个可用关系模式应满足的最低范式,如果一个关系模式不满足3NF,事实上它是不可用的。

关系模式规范化72任务实施【任务1】将学生关系模式S(学号,姓名,性别,出生日期,系名,系主任,课程号,成绩)规范化为第二范式。分析:对学生关系模式S来说,姓名、系名、系主任只依赖于学号,与学生所选课程号无关,因此可将它们放到一个关系模式中;成绩属性完全依赖于学号和课程号,可将它们放到一个关系模式中。因此,将学生关系模式S进行分解,形成两个新的关系模式,结果如下:选修关系模式:S-C(学号,课程号、成绩)学生和系关系模式:S-D(学号,姓名,性别,出生日期,系名,系主任)经过上述模式分解,两个关系模式中的非键属性对键都是完全函数依赖,所以它们都满足2NF。

互动2:一个可用关系模式至少应满足第几范式?关系模式规范化73任务实施【任务2】将学生和系关系模式S-D(学号,姓名,性别,出生日期,系名,系主任)规范化为第三范式。分析:对学生和系关系模式S-D来说,姓名、性别、出生日期和系名直接依赖于学号,可将它们放在一个关系模式中,而把系名和系主任放到另一个关系模式中。因此,学生和系关系模式分解的结果如下:学生关系模式:S(学号,姓名,性别,出生日期,系名)系关系模式:D(系名,系主任)分解后的关系模式S和D都不存在传递依赖关系,都满足3NF。

关系模式规范化74复习:1关系模式规范化的作用;2第一范式满足的条件;3将第一范式转化为第二范式;4将第二范式转化为第三范式;75关系模式规范化作业:1.分析下面是否满足第三范式:2.预习MYSQL软件安装与配置及启动方法,微课视频3。76关系模式规范化THANKYOU!项目1:部署数据库开发环境数据库应用任务2MySQl安装与配置——安装、配置与登录MySQL

教学目标

素质目标

知识目标1线上线下结合,引导学习方式,培养自主学习能力;2培养学生积极探索、勇于创新的科学素养;3思政内容:本次课讲安装与配置,培养学生小组沟通协作共同学习,解决问题能力和团队合作精神;1能讲出MYSQL的特性;2能介绍MYSQL的版本及各版本的特点;3能理解关系数据库相关特性;4对软件安装有进一步的认识

能力目标1能分析数据特点和版本;2能下载需要软件并安装、配置、启动和退出;

教学重点下载与安装MYSQL、配置MYSQL服务器;在CLC模式下登录MySQL服务器

教学难点在系统提示符下登录MySQL服务器教学重难点知识储备1.了解MySQLMySQL是一个关系数据库管理系统,由瑞典MySQLAB公司开发,目前属于Oracle旗下产品。MySQL是一个真正的多用户、多线程SQL数据库服务器。SQL(结构化查询语言)是世界上最流行的标准化数据库语言之一,它使得存储、更新和存取信息更加容易。MySQL是一个客户机/服务器结构的实现,它由一个服务器守护程序Mysqld和许多不同的客户程序以及库组成的。在Web应用方面MySQL是最好的RDBMS(RelationalDatabaseManagementSystem,关系数据库管理系统)应用软件之一。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。MySQL软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,使得MySQL被广泛地应用在Internet上作为数据库,如Facebook、Google、新浪、网易、百度等大型网站也在使用MySQL作为网站数据库。

安装、配置与登录MySQL81知识储备MySQL数据库主要有以下特点。(一)可移植性用C和C++编写,并用大量不同的编译器测试,保证了源代码的可移植性。(二)丰富的API接口MySQL为多种语言提供了API,这些编程语言包括C,C++,Java,PHP,Python,Perl,Eiffel和Ruby等。(三)多平台支持MySQL支持如Linux、MacOS、OS/2、FreeBSD、NovellNetware、Windows等20多种操作系统,在一个操作系统中实现的应用可以很方便地移植到其他操作系统,而不需要对程序做任何修改。

安装、配置与登录MySQL82知识储备MySQL数据库主要有以下特点。(四)强大的查询功能支持常见的SQL语句规范,可以对不同表的查询在同一查询中实现,支持子查询、视图、存储过程、触发器、事务、外键约束等功能。(五)支持大型的数据库可以处理上千万条记录的大型数据库,国内外的很多大型网站都在使用MySQL作为网站数据库。(六)完全免费在网上可以任意下载,并且可以查看到它的源文件,进行必要的修改。(七)稳定性MySQL的功能齐全,运行速度很快,十分可靠,有很好的安全感。

安装、配置与登录MySQL83知识储备2.MySQL的版本(一)按操作系统分类MySQL可分为Windows版、UNIX版、Linux版、MacOS等等版本。同时,针对这些操作系统的不同版本,也有相应的MySQL版本。因此在下载MySQL时,需要根据不同的操作系统及版本选择下载相应的MySQL。(二)按用户群分类针对不同的用户群,MySQL可分为以下四个不同的版本。(1)MySQLCommunityEdition社区版,开源免费,但不提供官方技术支持。(2)OracleMySQLCloudService企业版,需付费。提供安全、经济高效的企业级MySQL云服务。(3)MySQLEnterpriseEdition企业版,需付费,提供完善的技术支持,可以试用30天。(4)MySQLClusterCGE高级集群版,需付费。互动1:对大多数企来来说,MySQL被使用的原因是什么?(能讲清理由即可)安装、配置与登录MySQL84知识储备2.MySQL的版本(三)MySQL的版本以本教材采用的MySQL8.0.22版本为例,在版本号8.0.22中:(1)“8”表示主版本号,描述了文件格式;(2)“0”表示发行级别,主版本号和发行级别构成了发行序列号;(3)“22”表示此发行系列内的版本号,序列内每发行一个新版该版本号会增加1。在发行版本号中可能还会含有后缀,用该后缀标示发行版的稳定级别。

安装、配置与登录MySQL85任务实施【任务1】下载MySQL安装包。分析:MySQL的下载地址/downloads/mysql/。

下载过程在此略,详见教材。【任务2】MySQL安装与配置。安装过程:MySQL下载完成后,开始安装。安装过程在此略,详见教材。安装、配置与登录MySQL86知识储备二、MySQL的启动与登录在MySQL安装完成后,打开“Windows任务管理器”窗口,可以看到MySQL服务进程“MySQLd.exe”已经启动:安装、配置与登录MySQL87知识储备二、MySQL的启动与登录如果MySQL服务因故关闭了,有两种方式可以启动MySQL服务。1.通过Windows服务管理器来启动MySQL服务器单击“开始”菜单下的“运行”命令,在“打开”文本框中输入“Services.msc”后单击“确定”按钮,打开“Windows服务管理器”:安装、配置与登录MySQL88知识储备二、MySQL的启动与登录如果MySQL服务因故关闭了,有两种方式可以启动MySQL服务。2.在CMD模式下启动MySQL服务器单击“开始”菜单下的“运行”

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论