数据库表设计,一张表和多张表有关系,并且是多对多关系 200

比方说,班级表和老师表,学生表,成绩表关联,并且班级和老师的关系是多对多的,应该怎么设计?... 比方说,班级表和老师表,学生表,成绩表关联,并且班级和老师的关系是多对多的,应该怎么设计? 展开
 我来答
长啊长就知道了
推荐于2018-05-11 · TA获得超过163个赞
知道小有建树答主
回答量:157
采纳率:33%
帮助的人:79.7万
展开全部
班级表(class): id,class_name
学生表(student):id,student_name,class_id
老师表(teacher):id,name
成绩表(score):id,kecheng_id,stu_id,score
课程表(kecheng):id,kecheng_name
老师班级表(teacher_class):id,class_id,teacher_id
表关联设计思想:
1-1,外键放在那个表都可以,一般放在改动小的
1-n,n-1,吧1的id放在n的里面
n-n,需要第三张表来存放两者id
班级-学生:1-n
班级-老师:n-n
另外现在几乎不使用实体外键,而采用逻辑外键,方便修改
huhu5839
2016-08-11 · 超过23用户采纳过TA的回答
知道答主
回答量:74
采纳率:0%
帮助的人:30.2万
展开全部
单表的就不详细说了
列举一个吧,就比如班级表
class_id(主键)
class_name
class_studentnumber
//老师表和学生表也是一样

在此基础上,再添加下表
老师班级表
teacher_id
class_id
student_id
teacher_name
teacher_sex

其中主键为:teacher_id和class_id
双主键,就可以实现多对多关系
追问
中间表:classid,teacherid,testid,要设外键吗。还有,中间表可以满足任意一个已知id查询另外两个对应的值吗。比方说,已知老师,可以查到对应的班级和考试,已知的考试可以查到对应的班级和老师
追答
设置不设置外键看情况了,在学校的时候老师可能会让设置外键(是为了让你对外键进行学习)。可是到了企业工作后大部分的公司是不设外键的,为什么呢,因为这个东西真是太蛋疼。

中间表的话可以实现根据一个id的值来查询到另外两个的值的。不过既然是多对多的关系,查询出来的值应该不只一个就是了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
super乐乐儿
2016-08-11 · TA获得超过156个赞
知道小有建树答主
回答量:161
采纳率:66%
帮助的人:64万
展开全部
设计鸡毛。你就告诉你们老师。 你想查几个表,想要什么样的结果,我给你写sql!!!!!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式