第4-4章 概念结构设计
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5 局部概念结构设计
例:在教师管理中,“职称”是作为“属性”还是“实体”? (1)如果仅需说明教师是什么“职称”,则作为“属性” 看待。
编号 姓名 性别 职称
教师
编号 001 002
姓名 张华 王海
性别 男 男
职称 讲师 教授
5 局部概念结构设计
2)如果还需对每一个职称做进一步说明,例如,在图书 馆借阅管理中,需要说明每个职称对应的借书限制, 则将其作为实体:
1. 选择局部应用
根据系统的具体情况,将系统划分成若干子系统,将 每个子系统作为设计分E--R 图的出发点。 2. 逐一设计分E--R图 利用抽象机制,对需求分析阶段收集到的数据进行分 类、聚集,形成实体(集)、实体的属性及实体型,标识 实体的码,确定实体之间的联系类型。
5 局部概念结构设计
实体与属性的划分原则: 能作为属性对待的,尽量作为属性对待。 但实体与属性在形式上没有明确界限。划分的准则为: 1. 作为属性,不能再具有需要描述的性质。即属性必须是 不可再分的数据项。 2. 属性不能与其它实体有联系。只有实体之间才有联系。
1 负责
班级实体集
1
班长实体集
班长
2 实体集之间的联系
2. 两个实体集之间的一对多联系(1:n)
对于实体集A中的每个实体,实体集B中有n个实体(n>=0)与之联系, 反之,对于实体集B中的每个实体,实体集A中至多有一个实体与之联系。
一对一联系是一对多联系的特例。
班级
1
包含
班级实体集
n
学生实体集
学生
7) 联系 实体内部的联系:组成实体的各属性之间的联系。 实体型之间的联系:指不同实体集之间的联系。
2 实体集之间的联系
注意:不管哪种联系,都是根据客观现实确定的,而不 是人为加上去的。
一 . 两个实体集之间的联系
1. 两个实体集之间的一对一联系(1:1)
对实体集A中的每个实体,实体集B中至多有一个(也可以没有)实 体与之联系,反之亦然。 班级
m
p
零件
项目
4 概念结构设计步骤
概念结构设计一般采用自底向上方法。这种方法在设计时 分分两步: 第一步:抽象数据并设计局部应用的概念结构。
第二步:集成局部概念结构,得到全局的概念结构。
子需求 子需求 子需求 子需求
概念模式1
概念模式2
概念模式3
概念模式4
概念模式5
概念模式6
全局概念模式
5 局部概念结构设计
第4-4章 概念结构设计
1 概念数据模型
需求分析的结果难以一下子转化为关系模型,需要经过概念 数据模型过渡。
概念数据模型按用户的观点对数据建模,用于数据库设计。
它是数据库设计人员和用户之间交流的语言。主要特点如下:
(1)能真实充分地反映现实世界,包括事物和事物之间的 联系,是对现实世界的一个真实模型。 (2)易于理解,可以用它和不熟悉计算机的用户交换意见。 (3)易于更改。 (4)易于向关系数据模型转化。 描述概念数据模型的有力工具是实体-联系图(E-R图)。
2 概念数据模型与概念数据结构设计
概念模型举例:
实体型:矩形 属 性:椭圆 联 系:菱形
学号 姓名 性别 年龄 n 属于 班号 1 专业 学院
学生
n
班级
选修
m
成绩
课程
课号 课名 学时
1 概念数据模型
建立模型的过程:
现实世界
认识抽象
信息世界: 概念数据模型 转换 机器世界:逻辑数据模型
1 概念数据模型
二. 三个实体集之间的联系
1. 三个实体集之间的一对一联系 例:一般中小学
班级
1
教学
1 1
班主任
教室
2 实体集之间的联系
2. 三个实体集之间的多对多联系
例1:一般学校情况: 一门课多个教师讲,使用多种参考书; 每位教师可以讲多门课; 一种参考书有可能供若干门课程使用;
课程
p
教学
m n
教师
参考书
2 实体集之间的联系
学号 姓名 性别 年龄 n 属于 班号 1 专业 学院
学生
n
选修 m
班级
成绩
课程
课号 课名 学时
3 概念模型实例
学生管理概念数据结构的简化表示:先列出实体及属性, 在画出实体之间的联系。 学生(学号,姓名,性别,年龄) 班级(班号,专业,院系) 课程(课号,课名,学时)
学生
n
选修 m 成绩 n 属于 1
名称
位置
负责 人
电话
阅览室
候选码:名称
5 局部概念结构设计
2)确定实体之间的联系:
n 1
读者
1
属于 n
属于
读者类别
书
n 属于 1
n
属于
1
书种
阅览室
7 全局概念结构设计
将所有的分E--R图综合成一个系统的总E--R 图。分两个 阶段进行: 第一阶段: 合并。 解决各E--R图之间的冲突,将各分E—R 图合并。一般使用逐步合并的方法。 第二阶段:对初步E--R图进行修改和重构,消除不必要的 冗余,生成基本的E--R图.
班级
课程
3 概念模型实例
例2:某厂物资管理系统的概念模型
仓库(仓库号,面积,电话) 零件(零件号,名称,规格,单价,描述) 供应商(供应商号,姓名,地址,电话,帐号) 项目(项目号,预算,开工日期) 职工(职工号,姓名,年龄,职称)
职工
1 领导 n
n
工作
1
仓库
n
供应商
m 供应 n 供应量
库存量
存储
7 全局概念结构设计 2.命名冲突
可发生在实体、联系或属性上有同名异义、或异义同名 等现象。
3.结构冲突
同一对象,有的E--R图中当作属性处理,而有的当作实 体处理,或同一实体包括的属性个数不同.或者实体间的联 系在不同的分E--R图中的类型不同。
7 全局概念结构设计 (二)消除不必要的冗余,设计基本E--R图
数据抽象
概念结构是对现实世界的一种抽象。
所谓抽象是对实际的人、 物、 事和概念进行人为处理, 抽取所关心的共同特征,忽略非本质的细节,并把这些特征 用各种概念精确地加以描述。 三种常见的抽象: 1) 分类 2) 聚集
3) 概括
1 概念数据模型
数据抽象1: 分类
根据现实世界某些对象具有的共同特征和行为,通过定 义某一概念作为这组对象的类型来概括这组对象。 如:“学生”类型, “课程”类型,“班级”类型等。 它抽象了对象值和型之间的“ is member of ”的语义。
编号 姓名 性别 年龄 n 属于
职称名
1
最多借 阅数量
最长借 阅时间
教师
Байду номын сангаас
职称
编号 001 002
姓名 张华 王海
性别 男 男
职称 讲师 教授
职称名 教授 副教授
最多借 阅数量 15 12
最长借 阅时间 60 60
5 局部概念结构设计
设计局部E-R图的步骤(以设计图书馆借阅管理数据库为例): 1)确定实体集、属性、实体型、码:
学号
姓名
性别
年龄
班号
1 概念数据模型
数据抽象3:概括
定义类型之间的一种子集联系,它抽象了类型之间的 “ is subset of ”的语义。 概括有一个很重要的的性质:继承性。子类继承超类上定 义的所有抽象。这样,本科生、研究生就继承了学生类型的属 性。 子类也可以增加自己的特殊属性。
超 类
学 生 is subset of
冗余的数据:可由基本数据导出的数据。 冗余的联系:可由其它联系导出的联系。
第4-4章 概念结构设计
1 2 3 3 4 5 6
什么是概念数据模型?有什么特点? 说明概念数据模型与逻辑数据模型的区别与联系? E-R图的要素有哪些? 实体集之间有哪些联系? 划分实体和属性的原则是什么? 概念结构设计的步骤是什么? 分E-R图之间可能会有哪些冲突?
3) 码
唯一标识实体的一个属性或属性集合。 例如:学生的学号可以标识学生实体 ,故“学号”为码。
1 概念数据模型
4) 域 即属性的取值范围。如 “性别”属性的域为(男、女) “年龄”属性的域为(1 ~ 100) 5) 实体型 刻画同类实体所具有的特征和性质的框架。 表示:实体名(属性1,属性2,……) 如 : 学生(学号、姓名、性别、年龄) 6) 实体集 同类实体的集合。 如全体学生构成学生实体集,全部课程构成课程实体 集。
学 生 “ is member of ”
张雪
王雨 …… 刘勇
赵山
1 概念数据模型
数据抽象2: 聚集
定义某一类型的组成成分,它抽象了对象内部类型和成 分之间 “ is part of ” 的语义。 在 E--R 模型中,若干属性的聚集组成实体型就是这种 抽象。
实体型
学 生 is part of
属 性
7 全局概念结构设计
(一)合并分E--R图,生成初步E--R图
由于面向的问题不同,设计人员不同,分E--R图之间可 能会有冲突。 冲突可能分为三类 1. 属性冲突 指属性值的类型、取值范围、取值集合以及取值单位的 不同。 如:年龄。有的用整数表示,有的用出生日期表示。 如:医院的药品的规格、单位。药库、门诊药房、住院 部药房就互不相同.
例2:某公司物资采购管理处:为全公司各项目采购物资。 每个供应商可为多个项目供应各种物品。 每个项目可使用多个供应商供应的物品。 每种物品可由不同的供应商供给。
供应商
p
供应
m n
项目
物品
2 实体集之间的联系
三. 单个实体集间的联系
职工
1 n
零配件
n
m
领导
安装
3 概念模型实例
例1: 学生管理系统的 E-R 图如下:
2 实体集之间的联系
3. 两个实体集之间的多对多联系(m:n)
对于实体集A中的每个实体,实体集B中有n个实体(n>=0) 与之联系,反之,对于实体集B中的每个实体,实体集A中也有 m个实体(m>=0)与之联系。 一对多联系是多对多联系的特例。
学生
n
选修
学生实体集
m
课程实体集
课程
2 实体集之间的联系
子 类
本科生
研究生
1 概念数据模型
概念数据模型中的主要概念
1) 实体 实体即客观存在、并可相互区别的事物,可以是人、事、 物等,如:一个学生,一门课,一本书等。 2) 属性
属性即实体具有的某一特性。一个实体可以由若干属性来刻 画。如:学生实体可由学号、姓名、性别、年龄等属性组成:
(02057001,张三,男,19)
借书 证号
姓名
单位
类别
类别名
最多借 阅数量
最长借 阅时间
读者
读者类别
候选码:借书证号
候选码:类别名
5 局部概念结构设计
索引号
标准 书号
书名
作者
出版社 出版 时间
书种
价格
主题 词
开本
条码号
索引 号
阅览 室
状态
候选码:索引号 标准书号
借阅证 号 借书 时间 还书 时间
书
候选码:条码号
5 局部概念结构设计