论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
IT评测·应用市场-qidao123.com
»
论坛
›
数据库
›
向量数据库
›
数据库(五)数据库设计 | 实体关系模型ER model 映射基 ...
数据库(五)数据库设计 | 实体关系模型ER model 映射基数 弱实体集 实体关 ...
宝塔山
金牌会员
|
2024-9-25 06:23:26
|
显示全部楼层
|
阅读模式
楼主
主题
996
|
帖子
996
|
积分
2988
参考
ER 图是什么?这一篇让你搞懂 ER 图! - 知乎 (zhihu.com)
数据库设计核心就是
1 明确用户需求
2 利用E-R关系模型,绘制E-R图
3 将E-R关系模型转换为数据库表
本节核心在第二部分到第三部分
1 实体关系模型 ER模型ER model
1.1 E-R模型结构
E-R模型实际上是由多个实体集(含有差别属性)和联系集组成
1.1.1 实体和实体集
实体 Entity
是一个物体,客观存在而且相互区别
好比一个学生,一个公司
实体集合 Entity Sets
具有雷同属性的实体的集合
好比一群学生,一系列公司
1.1.2 属性
属性 Attributes
好比ID,姓名,这些属性可以大概区别差别的实体
就好比我们每个人都有自己的特征,这些特征区分了差别的实体
除了根本属性另有如下一些属性概念需要了解
**简单属性 Simple 和复合属性 composite **
简单属性:不可再拆分,如数学成绩是一个简单属性
复合属性:可以再拆分,即属性的嵌套组合,如名字这个属性可以拆分为姓这个属性和名这个属性
单值属性 Single-valued和多值属性 multi-valued
单值属性:即只能是一个的属性,如一个人性别值只能是一个男或女 (排除个别特殊现象哈哈哈)
多值属性:即可能有多个值的属性,如电话号码可以有多个
**派生属性 Derived attributes **
可以从一个已知的属性的值推理出来,好比知道出生可以退出年事
以是年事就是一个派生属性
形貌属性 descriptive attributes
形貌属性一样平常都是给关系集合的,
如学生实体集合Student和考试实体集合section通过take(参加)这一个关系集合联系起来,那么take这个关系集合可以用grade成绩这一属性来形貌
1.1.3 关系集合
关系 Relationship
在一些实体中的关系
**关系集合 Relationship Sets ** 雷同范例的关系的集合
关系集合每每要创建多个实体集的关系
递归关系集合 Recursive relationship set
同一实体集以差别的角色多次到场关系集。
二元关系
只包罗两个实体集的关系
非二元关系集合
含凌驾两个实体集的关系
1.2 ER关系图绘制
E-R diagram ER关系图
1.2.1 实体集绘制
1 矩形表示一个实体集,矩形上方写实体集的名字
2 实体集的属性一个一个列在矩形框内,用下横线标识主键
举例如下 Student表的关系图绘制
1.2.2 关系集绘制
1 用一个菱形方块代表关系集,毗连多个实体集矩形
举例如下 advisor代表一个关系集
2 上面讲到形貌性属性,用虚线表示,如下
上面我们讲完了实体集的一些初步先容,接下来重点讲此中一些部分
2 映射基数 Mapping Cardinalities
Mapping Cardinalities 映射基数 表示另一个实体可以通过关系集与之关联的实体数。
有以下几种范例
一对一,一对多,多对一,多对多
2.1 映射基数范例
2.1.1 一对一
一对一 one to one:一个导师最多指导一个学生,一个学生最多被一个导师指导。说明导师可以不指导学生,学生也可以单干。
绘制E-R图如下 左右各一个箭头
2.1.2 一对多
一对多 one to many:一个导师可以指导任意多个学生,一个学生至多被一个导师指导。
绘制E-R图如下 只有one的那一侧有箭头
2.1.3 多对一
多对一 many to one:一个导师至多指导一个学生,一个学生可以被任意个导师指导。
绘制E-R图如下 只有one的那一侧有箭头
2.1.4 多对多
多对多 many to many:一个导师可以指导任意学生,一个学生可以被任意多个导师指导。
说明导师可以不指导学生,也可以指导好些个。学生可以单干,也可以多拜几个师傅
绘制E-R图如下两侧都没有箭头
总结:one指向的那一侧是箭头->
对于以上的各种关系,每一个advisor关系集合的超键都由各个实体集合的主键并集组成
但是超键却不太一样,一样平常选择many那一侧的主键做关系集合的主键
多对多
主键和超键雷同
一对多
多的那一侧,当做主键
一对一
任何一侧都可以当做主键
2.2 全部或部分到场束缚
Total and Partial Participation 全部或部分到场
如下图所示,绘制E-R图时间 双线代表全部,单线代表部分
学生一侧是全部,含义代表每一个学生必须有一个指导老师
导师一侧是部分,含义代表有些老师指导学生,有些老师不指导学生
2.3 最小最大基数束缚
在之前的基础上,可以加数目上的范围束缚
E-R关系图上用双点表示, *表示无穷制
格式
最小值..最大值
复制代码
举例如下
含义如下
左侧老师一侧:0…* 代表一个指导老师可以大概指导0个或者更多个学生,没有上限
右侧学生一侧:1…1 代表一个学生至少1 个老师,至多也只有1个指导老师
超键是都有的
但主键根据情况差别而差别
好比
3 弱实体集
他的存在依靠于另一个实体集(被依靠的那个称作标识实体集identifying entity sets)
好比 考试这个存在就是依靠于课程的存在,以是课程实体集叫做标识实体集identifying entity sets,考试这个实体集叫做弱实体集Weak Entity Sets
E-R图中,用双框矩形表示,关系集合由双框菱形组成,虚线代表辨别属性
如下图所示
该关系集合sec_course 的主键由标识实体集的主键和弱实体集的辨别属性(即虚线画出来的)一起构成
弱实体集那一侧一定是全部total participation
4 ER模型转换为关系模式Relation Schema
初步办理
4.1 强实体集表示
对于强实体集而言有着简单的属性,直接转即可
举例如下
对于强实体集有着复合属性,转换后成为一个一个简单属性(复合属性不会出现在此中)
举例如下
对于多值属性而言如电话号码,我们再创建一个新的表
派生属性不要出现在表中,直接计算得到
4.2 弱实体集表示
弱实体集形成新的表包罗标识实体集的主键和它自己的属性
举例如下
4.3 关系集合表示
多对多
两个实体集的主键+他自己的形貌属性
多对一
优化如下
一对一
优化如下
5 实体关系设计
标题一:假设一个部分可能有许多差别的分配。
办理:利用多值复合属性赋值
标题二:假设有关于作业的其他信息,例如最高分或截止日期
办理:将叶属性添加到分配属性
但是标题二有冗余标题
将赋值模型建模为由部分标识的弱实体集
6 扩展E-R特征
6.1 IS-A 继续
Person可以颠末Specialization(特化)称为两个小的如学生也是雇员
实体集可以包括实体的子分组,这些实体在某种水平上与集中的其他实体差别。
较低级别的实体集继续(inheritance)了较高级别实体集的所有属性和关系到场。
多重继续 简单继续
例如 职员集包括子组——员工集和学生集
重叠(Overlapping)——一个实体可能属于多个专用实体集,束缚要求一个实体可以属于多个较低级别的实体集如,一个人可能既是学生也是雇员
不相交(Disjointness)——一个实体最多必须属于一个专用实体集,束缚要求一个实体只能属于一个较低级别的实体集,如一个人只能是雇员里的前台柜员或者秘书之一
通过架构表示 IS-A 关系
方式一
创建一个高水平实体集的架构,创建一个低水平的架构。通过外键创建两个练习
缺点:获取有关的信息,一个员工需要访问两个关系(低级架构和高级架构)
方式二
利用所有本地属性和继续属性为每个实体集形成架构
缺点:冗余
用聚合的方式
利用聚合 – 可以将聚合实体集视为单个单元,而不思量其内部结构的细节。
聚合是一种抽象,通过该抽象,将关系视为更高级别的实体
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
宝塔山
金牌会员
这个人很懒什么都没写!
楼主热帖
分布式事务 | 使用DTM 的Saga 模式 ...
Maxwell 一款简单易上手的实时抓取Mysq ...
Sqlserver2012卸载
哈工大信息安全概论期末复习 ...
WebLogic JNDI注入(CVE-2021-2109) ...
HTTPS基础原理和配置-3
轻量级CI/CD发布部署环境搭建及使用_03 ...
数字IC-1.9 吃透通信协议中状态机的代 ...
[DuckDB] 多核算子并行的源码解析 ...
.NET服务治理之限流中间件-FireflySoft ...
标签云
AI
运维
CIO
存储
服务器
快速回复
返回顶部
返回列表