ER图总结

简介: ER图总结

一、概念

E-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型


二、组成部分

实体:一般认为,客观上可以相互区分的事物就是实体,实体可以是具体的人和物,也可以是抽象的概念与联系。


属性:实体所具有的某一特性,一个实体可由若干个属性来刻画。属性不能脱离实体,属性是相对实体而言的。对于主属性名,则在其名称下划一下划线


联系:也成关系,信息世界中反映实体内部或实体之间的关联。实体内部的联系通常是指组成实体的各属性之间的联系;实体之间的联系通常是指不同实体集之间的联系。使用菱形表示:


连线:实体与属性之间;实体与联系之间;联系与属性之间用直线相连。(对于一对一联系,要在两个实体连线方向各写1; 对于一对多联系,要在一的一方写1,多的一方写N;对于多对多关系,则要在两个实体连线方向各写N,M。)


1对1联系:一个学校只有一个正校长,而一个校长只在一个学校中任职,则学校与校长之间具有一对一联系。

1对多联系:某校教师与课程之间存在一对多的联系“教”,即每位教师可以教多门课程,但是每门课程只能由一位教师来教。一个专业中有若干名学生,而每个学生只在一个专业中学习,则专业与学生之间具有一对多联系多对多联系:一个员工可以同时在多个部门工作,而一个部门有多个员工在其中工作,则“员工”与“部门”的“工作”联系为m:n联系。


三、步骤:

1、确定所有的实体集合;


2、选择实体集应包含的属性

3、确定实体集之间的联系


4、确定实体集的主键,用下划线在属性上表明主键的属性组合

5、确定联系的类型,在用线将表示联系的菱形框联系到实体集时,在线旁注明是1或n(多)来表示联系的类型


验收标准:


1、词汇表达准确,实体为名词,联系为动词。


2、图形使用是否准确,见上文。


3、实体之间的关系正确,如学生与课程之间的关系为多对多。


4、实体名称和属性与数据库中的表名和字段对应。实体为数据库中表的名字,属性为数据库中的字段。


四,注意

1、数据库命名要规范,只能使用半角英文字母、数字、下划线作为数据库表和列的名称。


2、数据库包含的数据表过多,可以分几张er图来展现。


3、如果实体过多,可将属性和实体分开画。


4、当有多对多关系并且产生第三张表的时候,直接将新表的字段放在菱形关系的上面


目录
相关文章
|
数据采集 消息中间件 监控
数据库 ER 图介绍|学习笔记
快速学习数据库 ER 图介绍
数据库 ER 图介绍|学习笔记
|
自然语言处理 IDE 测试技术
通义灵码测评
个人测评
74183 2
架构学习——ER图
架构学习——ER图
560 0
|
存储 SQL 算法
搞定了 6 种分布式ID,分库分表哪个适合做主键?
在《ShardingSphere5.x分库分表原理与实战》系列的第七篇文章中,作者探讨了分布式ID在分库分表中的重要性,以及如何利用`ShardingSphere-jdbc`的多种主键生成策略。文章介绍了`UUID`、`NanoID`、自定义雪花算法和`CosId`等策略的优缺点,并警告不要在SQL中手动拼接主键字段。此外,文章还展示了如何配置这些策略,并提醒读者`CosId`在5.2.0版本可能不可用。最后,文章讨论了如何自定义分布式主键生成算法,并强调选择策略时要考虑全局唯一性、性能和易用性。
1523 122
|
存储 SQL 缓存
数据库测试|Elasticsearch和ClickHouse的对决
由于目前市场上主流的数据库有许多,这次我们选择其中一个比较典型的Elasticsearch来和ClickHouse做一次实战测试,让大家更直观地看到真实的比对数据,从而对这两个数据库有更深入的了解,也就能理解为什么我们会选择ClickHouse。
数据库测试|Elasticsearch和ClickHouse的对决
|
机器学习/深度学习 存储 自然语言处理
如何微调(Fine-tuning)大语言模型?
本文介绍了微调的基本概念,以及如何对语言模型进行微调。
2097 16
|
存储 数据管理 数据库
|
前端开发 JavaScript 数据安全/隐私保护
前端JS正则校验密码之3种实现方式
这篇文章展示了三种使用JavaScript正则表达式来校验密码的方法,密码需要满足包含大写字母、小写字母、数字及特殊字符,并在8到16位之间,同时提供了示例代码和实现效果。
723 1
前端JS正则校验密码之3种实现方式
|
机器学习/深度学习
关于E-R(实体-联系)图
关于E-R(实体-联系)图
503 0
|
JSON Java UED
uniapp:使用DCloud的uni-push推送消息通知(在线模式)java实现
以上展示了使用Java结合DCloud的uni-push进行在线消息推送的基本步骤和实现方法。实际部署时,可能需要依据实际项目的规模,业务场景及用户基数进行必要的调整和优化,确保消息推送机制在保证用户体验的同时也满足业务需求。
1838 0