第04章 数据库建模(实体-联系模型)_7-8节

发布时间:2021-06-06

数据库原理与设计

张申勇

第 04 章 数据库建模(实体-联系模型)_7-8节

数据库原理与设计认识自己用SWOT分析来了解自我:

第 4 章 数据库建模 Strengths:自己的强项; Weakness :自己需要改进的地方; (实体 -联系模型) Opportunities:机会在那里;

Threats: 负面的因素。2015/10/30 北京理工大学珠海学院 计算机学院 1

数据库原理与设计

张申勇

第 04 章 数据库建模(实体-联系模型)_7-8节

目 录4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.82015/10/30

数据库设计过程 E-R模型基本概念及表示

约束弱实体集 扩展E-R特征 E-R建模问题 数据库概念设计实例——大学选课系统 逻辑设计——E-R模型转化为关系模型北京理工大学珠海学院 计算机学院 2

数据库原理与设计

张申勇

第 04 章 数据库建模(实体-联系模型)_7-8节

概念设计任务 概念设计(即E-R模型设计)主要是根据需求分析规格 说明书完成如下任务: 定义实体集及属性,实体集的主码,用E-R图及数据字典 描述被建模的实体集;

定义联系集及属性,联系集的主码,联系的映射基数及参 与约束,实体的角色,并用E-R图描述被建模的联系集; 分析初步E-R图中是否存在依赖约束、多值联系?

利用扩展E-R特征对对象进行分类及聚合; 去除冗余数据,并保证满足所有数据需求不冲突; 对照需求分析规格说明书,检查E-R模型,看其是否包含 了所有数据、能否满足所有功能需求等。2015/10/30 北京理工大学珠海学院 计算机学院 3

数据库原理与设计

张申勇

第 04 章 数据库建模(实体-联系模型)_7-8节

大学选课管理系统需求分析 系统需求分析 系统目标及边界 功能需求分析

数据需求及业务规则分析 数据约束分析2015/10/30 北京理工大学珠海学院 计算机学院 4

数据库原理与设计

张申勇

第 04 章 数据库建模(实体-联系模型)_7-8节

大学选课管理系统的目标及边界 随着学分制的普及,大学选课管理系统已成为大学 信息管理系统中的重要组成部分。 本系统面向全体师生,对排课(每门课程开几个教 学班?谁来任教?上课时间与教室安排)、选修及 成绩进行集中管理,以实现排课、选课及成绩管理 的科学化、系统化和自动化,最大限度地为老师和 学生提供方便和提高管理效率。2015/10/30 北京理工大学珠海学院 计算机学院 5

数据库原理与设计

张申勇

第 04 章 数据库建模(实体-联系模型)_7-8节

大学选课管理系统的功能需求分析 学院基本信息管理:学院基本信息录入、维护与查询

班级基本信息管理:班级基本信息录入、维护与查询 学生基本信息管理:学

生基本信息录入、维护与查询 教师基本信息管理:教师基本信息录入、维护与查询 课程基本信息管理:课程基本信息录入、维护与查询 教室基本信息管理:教室基本信息录入、维护与查询 排课管理:根据开课计划实现自动或半自动的排课 学生选课:提供选课、退选和改选功能 课表查询:提供不同人员以不同方式查询选课信息

大学学分制管理系统的功能需求?

成绩管理:学生考试成绩录入、修改及查询2015/10/30 北京理工大学珠海学院 计算机学院 6

数据库原理与设计

张申勇

第 04 章 数据库建模(实体-联系模型)_7-8节

数据需求及业务规则分析 学院需要记录学院编号、学院名称、学院地址等信息,由 学院编号唯一标识 教师要求记录教师编号、教师姓名、职称、学位等信息, 由教师编号唯一标识 一个学院可聘用多名教师,但一名教师只能属于一个学院

班级需要记录班级编号、班级名称、年级、班级人数等信 息,由班级编号唯一标识 一个学院有多个班级,一个班级只能归属于某一个学院 班级人数为派生属性,它的值可通过统计学生实体集中属

于该班学生的人数而得到2015/10/30 北京理工大学珠海学院 计算机学院 7

数据库原理与设计

张申勇

第 04 章 数据库建模(实体-联系模型)_7-8节

数据需求及业务规则分析 学生需要存储学号、姓名、性别、出生日期、家庭住址、 电话号码等信息,由学号唯一标识 家庭住址由省份、城市、街道组成——复合属性; 电话号码可能有多个,如宿舍电话、实验室电话、移动电 话等——多值属性; 年龄可由生日推算出来——派生属性,不作为存储属性 学生可进一步分本科生和研究生两类,本科生需记录个人 兴趣,研究生需记录研究方向 一个班级有多名学生,但一个学生只能属于某一个班级 一个教师可以指导多名研究生,但一个研究生只能安排一 名指导教师2015/10/30 北京理工大学珠海学院 计算机学院 8

数据库原理与设计

张申勇

第 04 章 数据库建模(实体-联系模型)_7-8节

数据需求及业务规则分析 课程需要记录课程号、课程名称、课时、学分等信息,由 课程号唯一标识 一个学院可管理多门课程,但一门课程只能归属一个学院 如何理解 开课班与学生之间 课程之间需设置先修要求,一门主课程至多可以指定一门 多对多联系的语义(约束)? 先修课程,但一门先修课程可对应于多门主课程

每门课程可以安排多个开课班,开课班需存储开课班号、 年份、学期等信息,开课班号为部分码 一个开课班可安排多名教师任

教,需明确教师任教开课班 的任教角色;一名教师也可同时任教多个开课班 一个开课班被多名学生选修,每个学生可选修多个开课班 一个学生同一学期不能选修同一门课程的同一个开课班多 次;也不能选修同一门课程的多个不同开课班2015/10/30 北京理工大学珠海学院 计算机学院 9

数据库原理与设计

张申勇

第 04 章 数据库建模(实体-联系模型)_7-8节

数据需求及业务规则分析 教室需要记录教室编号、所在教学楼、电话号码、教室 如何理解教室与开课班之间多对多联系的语义? 类型、教室容量等信息,由教室编号唯一标识 一个教室可安排多个开课班,一个开课班可安排多个时间 和教室上课,且每次上课可能安排在相同或不同的教室 一个教室在同一时间段不允许安排多个开课班上课 (同一任课教师的同一门课程的多个开课班除外:合班)

一个学生在同一时间段不允许选修多个开课班 (重修课程是否除外?) 同一名教师不允许在同一时间段安排多个不同课程的开 课班或非合班上课的相同课程的开课班 教师在所任教的开课班考试结束后,需在规定的时间内 将所任教学生的成绩录入系统,并要求记录登分日期2015/10/30 北京理工大学珠海学院 计算机学院 10

数据库原理与设计

张申勇

第 04 章 数据库建模(实体-联系模型)_7-8节

主要业务的局部建模 主要实体集有:学院、班级、学生、教师、课程、教室教师 学生 选课-任教多对多的三元联系集

课程

观察 学生选修某学期的某门课程,只能从该学期该课程实际开设的若干个开课班中进行选修; 教师安排教学任务,也是针对需开设的开课班进行分配;

学生通过选修某个开课班来明确是哪位(些)教师给其授课; 一个学生可能会出现多次选修同一门课程的情况(如重修)。 即学生与课程之间的选课联系是多值联系。2015/10/30 北京理工大学珠海学院 计算机学院 11

数据库原理与设计

张申勇

第 04 章 数据库建模(实体-联系模型)_7-8节

主要业务的局部建模学生、课程、教师之间的建模 引入开课班弱实体集,它依赖于课程实体集

学生选修课程是指选择为其所开设的某个开课班 某个开课班需要安排任课教师。因此,学生与教师之间的授课联系就转化为 通过开课班与教师之间的任教联系来间接关联

课程

选修

排课

学生

Enroll 选课

开课班 CourseClass

任教

教师

授课2015/10/30 北京理工大学珠海学院 计算机学院 12

数据库原理与设计

张申勇

第 04 章 数据库建模(实体-联系模型)_7-8节

主要业务的局部建模上课时间、上课地点的建

模上课时间 教室编号 所在教学楼

课程

排课开课班号

开课班年份 学期

排时间 教室

教室教室容量

电话号码 教室类型

假设一个开课班可能安排多个时间上课,且不同时间可能安排在相同的或不 同的教室上课,则排时间教室联系集可能是多值联系。

开课班号

教室编号 排时间 时间安排 上课时间 排教室

所在教学楼 电话号码 教室类型 13

开课班年份 学期

教室教室容量

2015/10/30

北京理工大学珠海学院 计算机学院

数据库原理与设计

张申勇

第 04 章 数据库建模(实体-联系模型)_7-8节

主要业务的局部建模学生实体集的类层次及研究生指导的建模

学生

ISA本科生 研究生 指导 教师

兴趣爱好

研究方向

2015/10/30

北京理工大学珠海学院 计算机学院

数据库原理与设计

张申勇

第 04 章 数据库建模(实体-联系模型)_7-8节

主要业务的局部建模“录入成绩”联系集的聚合建模教师录入成绩

教师录入日期录入成绩 录入日期

学生

选课 成绩

开课班

学生

选课 成绩

开课班

(a) 直接表示聚合的E-R建模

(b) 通过联系实体集的E-R建模

2015/10/30

北京理工大学珠海学院 计算机学院

数据库原理与设计

张申勇

第 04 章 数据库建模(实体-联系模型)_7-8节

定义实体集及属性 学院:学院编号、学院名称、学院地址 班级:班级编号、班级名称、年级、班级人数。 班级人数为派生属性

教师:教师编号、教师姓名、职称、学位 学生:学号、姓名、性别、出生日期、家庭住址、电话号码 复合属性:家庭住址——省份、城市、街道 多值属性:电话号码

本科生、研究生,它们具有学生的所有属性,此外 本科生:个人兴趣 研究生:研究方向2015/10/30 北京理工大学珠海学院 计算机学院 16

数据库原理与设计

张申勇

第 04 章 数据库建模(实体-联系模型)_7-8节

定义实体集及属性 教室:教室编号、所在教学楼、电话号码、教室类型、教室容量

课程:课程编号、课程名称、学分、课时数 开课班:开课班号、年份、学期、教室容量、选课人数 开课班号为部分码,能够区分同一门课程在不同学期及同一学期所开设的不同开课班 教室容量、选课人数是派生属性

时间安排:上课时间 上课时间为部分码,能够区分同一个开课班的不同上课时间

2015/10/30

北京理工大学珠海学院 计算机学院

数据库原理与设计

张申勇

第 04 章 数据库建模(实体-联系模型)_7-8节

定义联系集及属性 设置联系集:实体集学院与班级之间的一对多联系集 表明一个学院可设置多个班级,但一个班级

只属于一个学院

归属联系集:实体集课程与学院之间的多对一联系集 表明一门课程只归属于一个学院,但一个学院可管理多门课程

聘用联系集:实体集学院与教师之间的一对多联系集 表明一个学院可聘用多名教师,但一名教师只能受聘于一个学院

联系属性为聘用日期

包含联系集:实体集班级与学生之间的一对多联系集 表明一个班级可包含多名学生,但一名学生只属于一个班级2015/10/30 北京理工大学珠海学院 计算机学院 18

数据库原理与设计

张申勇

第 04 章 数据库建模(实体-联系模型)_7-8节

定义联系集及属性 排课标识联系集:课程与开课班弱实体集之间的一对多联系集 表明一门课程可安排多个开课班,开课班号为部分码

选课联系集:学生与开课班之间的多对多联系集 表明一个学生可选修多个开课班,且一个开课班可包括多名学生

联系属性为成绩

任教联系集:教师与开课班之间的多对多联系集 表明一教师可任教多个开课班,且一开课班可安排多名教师任教

联系属性为任教角色

排时间标识联系集:开课班与时间安排弱实体集之间的一对多 联系集 表明一个开课班可安排多个上课时间,上课时间为部分码2015/10/30 北京理工大学珠海学院 计算机学院 19

数据库原理与设计

张申勇

第 04 章 数据库建模(实体-联系模型)_7-8节

定义联系集及属性 排教室联系集:弱实体集时间安排与教室之间的多对一联系集 表明多个上课时间可安排在同一个教室上课,但一个教室在一个 上课时间只能安排一个开课班上课

指导联系集:实体集教师与研究生之间的一对多联系集 表明一教师可指导多名研究生,但一名研究生只能安排一名指导 教师

先修要求联系集:由具有先修课程角色和具有主课程角色的 课程实体之间的一对多联系集 表明一门主课程至多指定一门先修课程,但一门先修课程可对应 于多门主课程

录入成绩联系集:实体集教师与联系集选课之间的一对多联系集 联系属性为录入日期2015/10/30 北京理工大学珠海学院 计算机学院 20

数据库原理与设计

张申勇

第 04 学院

章 数据库建模(实体-联系模型)_7-8节

设置

归属

班级包含成绩

课程排课开课班 排时间

先修课程 主课程

先修要求聘用日期

聘用

学生

选课

任教任教角色

教师

ISA

时间安排

排教室录入日期

教室

本科生

研究生

录入成绩 指导2015/10/30

图4-38 简化的大学选课系统E-R图 北京理工大学珠海学院 计算机学院

第04章 数据库建模(实体-联系模型)_7-8节.doc 将本文的Word文档下载到电脑

    精彩图片

    热门精选

    大家正在看

    × 游客快捷下载通道(下载后可以自由复制和排版)

    限时特价:7 元/份 原价:20元

    支付方式:

    开通VIP包月会员 特价:29元/月

    注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
    微信:fanwen365 QQ:370150219