学生管理系统CDM模型

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第四讲:学生管理系统CDM模型

教学目的:要求学生在理解概念数据模型(CDM: Conceptual Data Model)基本概念的基础上,能够根据“学生管理系统”的具体要求,建立符合功能要

求的概念数据模型,能够根据相关课程中学习的规范化理论的要求对模

型进行合理的简化,并且使得模型能够适用实际开发系统的需求,同时

应用好反规范化的思想。模型中实体之间的联系应该科学合理,学生能

应用Power Designer软件分析设计工具快速解决设计中的问题。

教学重点和难点:实体的抽象、实体的规范化与非规范化、实体间联系的定义教学方式和手段:课堂讲授;课堂演示,师生互动。

教学内容:

一、学生管理系统分析

1、功能要求

学生管理、成绩管理、选课管理、职工管理、活动管理、教材管理、宿舍管理、图书管理、仪器设备使用管理、院系管理

2、可能包含的实体

学生、课程、学校、院系、职工、活动、教材、宿舍、图书、仪器设备等。

3、分析后可能产生的实体

学生简历、学生家庭情况、学生奖励处分情况等等。

二、分析后建立的初步模型

1、标定联系和非标定联系的区别

2、多对多联系的分解

3、字典数据的建立(一般方法)

4、新实体的发现(设备卡片、图书卡片、简历等)

5、规范化实体的建立

6、反规范化的应用(字典名称、代码的问题)

7、递归联系的建立(院系)

8、属性分析(为每个实体添加属性)

9、数据类型定义

三、模型设计中的规范化与反规范化问题

规范化理论是研究实体中实体属性之间关系的科学。非规范化关系存在的问题:

①插入异常

②修改异常

③删除异常

例:有如下概念数据模型生成的物理数据模型(MS SQL Server2000),在数据库中存放一些记录,看看这三种异常的情况。

●插入异常

赵五,女,81/11/12,刚刚入学,没有参加任何活动,活动号为空值,这条信息不能加入。

增加王一参加(或本项活动)时,不能插入!

●修改异常

修改游泳活动项目时,需要修改两条信息(李三、李四)!

●删除异常

学生毕业时,需要删除学生信息,但连同活动的标准也删除了!

解决办法:

模式分解,做到一个主题一个模式!即:学生、活动,参加的活动情况使用中间表。

1、规范化理论(P152)

①前提

为了使数据库设计的方法走向完备,人们研究了规范化理论,从1971年起,E.F.Codd就提出了这一理论,目前规范化理论的研究已经有了很大的进展。

一般来说,关系必须是规范化的(Normalization),即每个数据项必须是不可分的数据项,但这只是最基本的规范化,并非所有规范化的关系都能很好地描

述现实世界,必须作进一步的分析,以确定如何设计一个好的、反映现实世界的关系模式。

关系数据库中的关系应该满足一定的要求,满足不同程度要求的为不同范式,满足最低要求的叫第一范式,简称1NF 。在第一范式中进一步满足一些要求的为第二范式,其余依此类推。

从范式来讲,主要是E.F.Codd 所作的工作,他提出了规范化的问题,并给出了范式的概念。

● 1971——1972年他系统地提出了1NF,2NF,3NF 的概念。 ● 1974年Codd 和Boyce 有共同提出了新范式的概念,即BCNF 。 ● 1976年Fagin 又提出了4NF 。 ● 后来,人们又提出了5NF 。

● 某一关系符合某个范式记作:R ∈nNF

● 范式之间的关系如下:5NF ⊂4NF ⊂3NF ⊂2NF ⊂1NF

一个低一级的范式的关系模式,通过模式分解可以转换成为若干个高一级范式的关系模式的集合,这种过程叫做规范化。

定义一:设R(U)是属性集U 上的关系模式,X,Y 是U 的子集,若对于R(U)的任意一个可能的关系r, r 中不可能存在两个元组在X 上的属性值相等,而在Y 上的属性值不等,则称“X 函数确定Y ”或“Y 函数依赖于X ”。

● 若X →Y,但Y X,则称X →Y 是非平凡的函数依赖,若不特别申明,我们总是

讨论非平凡的函数依赖。

● 若X →Y 则X 叫做决定因素(Determinant )。

● 若X →Y,Y →X,则记作X −→←

Y 。 定义二:在R(U)中,如果X →Y ,并且对于X 的任何一个真子集X ′都有 X ′

Y,则称Y 对X 完全函数依赖,记作:Y X f

−→−

,若X →Y,但Y 不完全函数依赖于X ,则称Y 对X 部分函数依赖,记作:Y X P

−→−

。 定义三:在R(U)中,如果X →Y ,(Y X ),Y X ,Y →Z ,则称Z 对X 传递函

数依赖。

定义四:设K 为R(U)中的属性或属性组合,若U K f

−→−

,则K 为R 的候选码

(Candidate Key),若候选码多于一个,则选定其中的一个做为主码(Primary Key)。

定义五:关系模式R(U)中属性或属性组X并非R(U)的码,但X是另一个关系的码,则称X是R(U)的外码(Foreign Key)

②几个范式

●第一范式

所有的属性是不可再分的数据项。如:生卒年月,工资等。

●第二范式(消除非主属性对码的部分依赖)

定义:若R(U)∈1NF,且每一个非主属性完全函数依赖于码,则R(U)∈2NF。关系:学生成绩(学号,系别,住所,课程号,成绩)不符合2NF。

码为:(学号,课程号)。

(学号,课程号)−→

−F成绩。

(学号,课程号)−→

−系别;

−P系别,学号−→

(学号,课程号)−→

−住所;

−P住所,学号−→

系别−→

−住所(因为每个系只住一个地方)。

分析:一个关系模式R(U)不属于2NF,就会产生几个异常问题。

插入异常:未选课学生无法插入

删除异常:要删除学生选课信息,连同学生信息也要删除。

修改异常:学生选择多门课程,修改学生信息时,需要修改多条。

如何分解?,请同学们考虑

●第三范式(消除非主属性对码的传递依赖)

定义:关系模式R(U)中若不存在这样的码X,属性组Y及非主属性Z(Z Y)使得

X→Y,Y→Z,Y X成立,则称R(U)∈3NF。

相关文档
最新文档