大家好,欢迎来到IT知识分享网。
今天单位有个小朋友问起,一对一,一对多,多对多 这三种关系该怎么理解。
一、一对一的关系
简单的说这个东西是和你绑定的,你和它都是唯一的对应关系。
举例说明: 你和你的身份证号,你和你的学生卡,你和银行卡 等等,这些关系都是一对一的关系。
数据表示:
表A (人员姓名表)
ID | 人员姓名 |
---|---|
ry1 | 张三 |
ry2 | 李四 |
表B (人员姓名表)
ID | 身份账号 | 外键 |
---|---|---|
sfzh1 | ry1 | |
sfzh2 | ry2 |
二、一对多的关系
简单的说就是 一个 对应 多个
举例说明: 销售记录和销售明细,一条销售记录对多条的销售明细。
注意: 这里不要钻牛角尖,如果我一张单据就买一个东西呢,岂不是就是一对一的关系了?不对的,我们设计东西时,会设计成一对一吗?如果是,那出现一对多的情况时,该怎么处理呢?是否就出现了设计失误呢。设计是无法完美的,只能是尽善尽美,尽可能的将前期想到的在使用中可能会出现的情况,纳入系统设计中。
数据表示:
表C (销售单据表)
销售单号(主键) | 销售人员 |
---|---|
dh1 | 张三 |
dh2 | 李四 |
表D (销售明细表)
明细ID | 产品名称 | 外键 |
---|---|---|
mx1 | 上衣 | dh1 |
mx2 | 裤子 | dh1 |
一对多时,多 代表的这一张数据表,可设置外键,进行联表查询。
三、多对多的关系
可以理解为:一张表A中的一条记录可以对应另一张表B中的多条记录,另一张表B中的一条记录也可以对应一张表A中的多条记录
举例说明: 学生与老师的关系。一名老师同时教授多个学生,一名学生同时被多名老师教导(数学老师、语文老师 等等),因此是多对多的关系。
数据表示:
表E (学生表)
学号(主键) | 学生名称 |
---|---|
xh1 | 张小小 |
xh2 | 李大大 |
xh3 | 王乎乎 |
表F (销售明细表)
老师ID | 老师名称 |
---|---|
ls1 | 原老师 |
ls2 | 韩老师 |
表G (关系表)
关系ID(主键) | 学生ID | 老师ID |
---|---|---|
1 | xh1 | ls2 |
2 | xh2 | ls2 |
3 | xh3 | ls2 |
4 | xh1 | ls1 |
5 | xh2 | ls1 |
6 | xh3 | ls1 |
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/116122.html