【MySQL】E-R图
一、什么是E-R图
实体-关系图(Entity-Relationship Diagram),简称 E-R图,通过实体、属性和关系三个核心要素,直观地展示数据模型的结构,辅助程序员理解数据模型的概念图。广泛使用在数据库设计阶段。
二、E-R图的基本组成
2.1 实体(Entity)
表示现实世界中可区分的对象或事物,如“学生”、“课程”等。在图中用矩形表示。
2.2 属性(Attribute)
描述实体的特征,如学生的“学号”、“姓名”等。用椭圆形表示,并与对应的实体连接。主键属性加下划线标注。
2.3 关系(Relationship)
表示实体之间的关联,如“选课”连接“学生”和“课程”。用菱形表示,并标注关系的类型(如一对一(1:1)、一对多(1:N)、多对多(M:N))。
三、关系的类型
3.1 一对一
我们使用各种网站,应用时都需要用自己的账号密码进行登录到自己的用户上,这个就是一个简单的一对一关系,账号下带的属性用椭圆形或圆角矩形来表示
3.2 一对多
当我们要根据E-R图的关系创建一对多关系的表时,可以按照下述步骤来
- 分别为两个实体创建表
- 在 N 方表中加入对 1 方表的关联字段
例:学生表:student(name,id,gender,class_id)
班级表:class(id,name,amount)
3.3 多对多
多对多与一对多不同,这里如果希望知道每个学生的每科成绩就需要单独创建一个关系表来维护数据
例:学生表:student(name,id,gender)
课程表:course(id,name,score)
成绩表:student_course(id,student_id,course_id,score)