数据模型
![]() 【 主要内容 】 一、信息模型 二、数据模型基本概念 三、层次数据模型 四、网络数据模型 五、面向对象数据模型 六、关系数据模型 【 本节作业 】 |
|
【 本小节要点 】 1、定义 2、实体联系模型 3、概念及术语 4、实体-联系模型的局限性 5、如何建立实体-联系模型 |
分类标准 |
分类情况 | 性 质 | 举 例 | |
属 性 |
按组成分类 |
原子属性 |
属性不可再分 |
性别、颜色 |
组合属性 |
属性可以再分 |
出生日期、籍贯 | ||
按取值分类 |
单值属性 |
对应域中的元素为单个值 |
一个人的性别 | |
多值属性 |
对应域中的元素为多个值 |
一个人的学位 |
△ 实体键(实体标识符):能唯一标识实体的属性或极小属性组 图1.2.3 学生实体ER图表示 △ 关系型数据库系统不能处理组合属性和多值属性的情况, |
分 类 | 定 义 | 举 例 | |
联
系 |
1:1(一对一联系) |
A中任意实体至多对应B中的一个实体,反之B中的任意实体 |
观众与座位、 |
1:n(一对多联系) |
A中至少有一个实体对应B中的 |
城市与街道、 | |
m:n(多对多联系) |
A中任意实体至少有一个实体对应B中的多个实体,反之B中的任意实体至少对应A中的多个实体 |
学生与课程、 |
|
分 类 |
概 念 |
举 例 | ||
参 |
完全参与 |
若某实体类型中的每一实体 |
![]() |
课程 |
部分参与 |
若某实体类型中的可能存在某些 |
教师 |
|
讨论: A、B两实体类型间存在联系R,A、B对R的参与度分别为(minA,maxA)和(minB,maxB) | |||
假 设 条 件 | 结论1 | 结论2 | 结论3 |
minx(x=A,B) = 0 |
实体类型部分参与R |
参与约束 |
基数比约束与参与约束 |
minx(x=A,B) > 0 |
实体类型完全参与R | ||
maxA=maxB = 1 |
1:1联系 |
基数比约束 | |
仅maxA或maxB为1 |
1:n联系 | ||
maxA,maxB >1 |
m:n联系 |
解法 |
ER图 | 分 析 |
①
|
|
能够满足要求,但模型不具有可扩展性 |
② |
|
能够满足要求,模型具有可扩展性,
但数据存在冗余,易造成数据不一致性 |
③ |
|
能够满足要求,但模型不具有可扩展性,
和①雷同,操作比①麻烦 |
④ |
|
能够满足要求,模型具有可扩展性,
数据不存在冗余,数据一致性好。 |
|