侧边栏壁纸
博主头像
SeaDream乄造梦

Dream,Don't stop a day of hard and don't give up a little hope。 ——不停止一日努力&&不放弃一点希望。

  • 累计撰写 40 篇文章
  • 累计创建 20 个标签
  • 累计收到 13 条评论

目 录CONTENT

文章目录

【er图】三大要素&&制作步骤&&优化表对应关系

SeaDream乄造梦
2023-09-07 / 0 评论 / 0 点赞 / 210 阅读 / 1,291 字
温馨提示:
亲爱的,如果觉得博主很有趣就留下你的足迹,并收藏下链接在走叭

先看成品:https://boardmix.cn/app/share/CAE.CJa_mA0gASoQ5ia_NDW6le060XR1Xib1QjAGQAE/lrXJvu
下面开始讲解


元素:

实体(矩形)、属性(椭圆)、关系(菱形||直线)

实体属性关系

1.实体

  1. 强实体——实线矩形
  2. 弱实体——双实线矩形
  3. (弱实体依赖于强实体),比如订单实体依赖于商品实体(先购买商品才会有订单)

2.属性

  1. 关键属性(可以唯一标识实体,如主键ID、身份证)
  2. 复合属性(属于组合属性,如地址包括省、市、县)
  3. 多值属性(可以包括多个值的属性)——双椭圆
  4. 派生属性(由另一个属性派生而来,如年龄能通过身份证推到出)——点椭圆

3.关系

  1. 一对一
  2. 一对多
  3. 多对一
  4. 多对多
    image.png

3.1.根据关系是1:1 1: n m:n 转成表

  1. 对于 1:1的 可以将关系保存到任何一个实体表中.
  2. 对于1:n的,可以将关系保存到n的那个实体里,例如图中的班级和学生是1对多,那么可以在学生表中增加一个班级id的字段,说明该学生是哪个班级的
  3. 学生表包含字段:学号,姓名,性别,年龄,班级ID 主键: 学生号
  4. 对于多对多的关系 m: n的 ,关系保存到新表中
    弱关系——双实线菱形(弱关系一般是和弱实体一起使用的,只有弱实体才会用到弱关系)

流程图步骤

  1. 确定实体
  2. 确定属性
  3. 确定主键
  4. 确定关系
  5. 确定关系
  6. 确定关系的基数
    1. 基数是指实体集之间的联系数目。在ER图中,关系的基数通常分为“一对一”(1:1)“一对多”(1:N)和“多对多”(M:N)。在连接实体和关系的线条上,用“1”或“N”来表示基数。
  7. 处理多对多关系
    1. 多对多关系在实际的关系数据库中是难以实现的,因此我们需要将多对多关系转换成两个一对多关系。例如“学生”与“课程”之间的“选课”关系,我们可以通过引入一个新实体“选课记录”来表示学生与课程之间的联系,同时将“选课”关系变为与“选课记录”相关的两个一对多关系。

er图优化

  1. 根据实际情况决定属性要不要标明。因为,属性标记太多的话会占据 ER 图的大部分区域,反而导致实体关系不容易察觉。
    image.png
  2. 优化二
    班主任其实是班级的一个属性,就可以去掉教师和班级之间的关系。这种优化很关键,关系越多意味着业务系统的实现越复杂,也很难进行扩展
    image.png
  3. 优化三——简化er图
    image.png
    image.png

作图工具推荐

亿图 https://www.edrawsoft.cn/
BoardMix:不需要安装 https://boardmix.cn/invitation/invitee/?code=aedt4pxIOem4
https://boardmix.cn/app/editor/5ia_NDW6le060XR1Xib1Qg
Microsoft Visio:Visio 是微软推出的一款绘制各类图形的专业软件,包括ER图在内。其超高的兼容性、便捷共享与协作功能,对微软Office生态的无缝整合,使其在企业级应用场景中广受欢迎。
Lucidchart:此工具以其直观简洁的界面和功能而著称,支持ER图、流程图等多种图形。Lucidchart 倡导团队合作,实时同步和多平台支持等特点让设计师在协作过程中更为顺畅。

参考文章:https://zhuanlan.zhihu.com/p/644729650

0

评论区