php在写数据中时,啥叫一对一和一对多

WBOY
Libérer: 2016-06-23 13:32:33
original
1315 Les gens l'ont consulté

这是一个教程,听里面这家伙讲,建表时有时一个表对另一个表,有时这个表要对几张表,即所谓的一对一,和一对多,具体为啥要这么干,这家伙就闭口不谈了,太另人发指了!
这种不传之秘道理是什么,何谓一对一或一对多!
我的理解表和表之间的关系不都是一对一吗,哪有什么一对多?
如图


回复讨论(解决方案)

老师表 和 学生表 不就是一对多的吗?
学科表 和 学生表 不就是多对多的吗?

至于你的贴图,咱不懂英文,你又没有说明。不好说什么

老师表 和 学生表 不就是一对多的吗?
学科表 和 学生表 不就是多对多的吗?

至于你的贴图,咱不懂英文,你又没有说明。不好说什么


啥意思,能详解吗

举个例子:
你有3个表 
学生表(学生id 学生姓名)
课程表(课程id 课程名)
成绩表 (学生id 课程id 分数)
班级表(班级id 学生id)
这里的班级表跟学生表就是一对多 一个班级包含了很多学生 反过来就是多对一
这里的课程表就是多对多 一门课对应多个学生选择 一个学生也可以有多个课程可以选 
至于一对一的话 教授与学生的关系 一般一个教授就对应一个学生

很简单
三个表
班级表
老师表
学生表

关系
1个班级有多个学生
所以班级表与学生表是1对多

一个老师有多个学生
所以老师表与学生表是1对多

1个班级有多个老师
1个老师可以教多个班级
所以班级表与老师表是多对多

谢谢上面二位。不过还有一个小问题有些疑惑:这种一对一或一对多,或多对多的情况,在mysql设计时,怎么才能看出作用来呢?或者说这种关系有无约束作用呢?
可能我表达的不准确,具体的就是在写sql句时,这些关系如何在sql句中表现呢

几对几是你的业务上的概念,与数据库本身无关,自然也不会体现在 sql 指令中

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal