实例
-
一对一关系实例:每一个中国本土的居民与居民唯一的身份证编号。一个本土居民只有一个身份证编号。‘唯一性’ -
一对多关系实例:1.一个母亲可以有很多孩子,一个孩子只有一位亲生母亲。 ? 2.一个员工有一个部门,1个员工关联一个部门,一个部门可以拥有多个员工,但一个员工只能关联一个部门。 -
多对多关系实例:1.一位老师可以教导多个学生,一个学生可以被多个老师教导。 ? 2.一个学生可以选择多门课程,一门课程可以被多个学生选中。
关系
一对一关系:
? 一对一关系是最简单的关系,在数据库建表时,可以将‘本土居民’表中的主键ID放置到’身份证‘表中;
? 或者将‘身份证’表中的主键ID放置到‘本土居民’类表中。
? 在‘一对一’关系中,‘本土居民’表 和 ‘身份证’表 可以随意指向。
一对多关系:
1.母亲是A端,孩子是多端,结合面向对象来说,A端是母亲,对端就是孩子;
所以多端拥有A端的属性,即多端中应该放置A端的主键ID,‘孩子’表格中应该放置‘母亲’表中的主键ID。
一对多(又名多对一),理应将多的那个表当做主表,少的那个表的为次表。
多对多关系:
对于多对多的关系,我们需要将它转换成1对多的关系,那我们就需要一张中间表来进行转换,
这张中间表内存放学生表里面的主键和课程表里面的主键,这是学生与中间表之间是1对多的关系,
课程与中间表也是1对多的关系。
学生与课程之间是多对多的关系。
2.一个班级有若干个老师,一个老师也可以带若干个班级。同理!
小结:
- 在这3种关系中,1对多的关系是最重要的,根据面向对象的思想在建表的时候将某1端的主键放置于多端即可。
- 只有明确这3种关系,才能更好的根据项目需求来设置数据库的数据。
|