数据库表设计,一张表和多张表有关系,并且是多对多关系 200
3个回答
展开全部
班级表(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
另外现在几乎不使用实体外键,而采用逻辑外键,方便修改
学生表(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
另外现在几乎不使用实体外键,而采用逻辑外键,方便修改
展开全部
单表的就不详细说了
列举一个吧,就比如班级表
class_id(主键)
class_name
class_studentnumber
//老师表和学生表也是一样
在此基础上,再添加下表
老师班级表
teacher_id
class_id
student_id
teacher_name
teacher_sex
其中主键为:teacher_id和class_id
双主键,就可以实现多对多关系
列举一个吧,就比如班级表
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的值来查询到另外两个的值的。不过既然是多对多的关系,查询出来的值应该不只一个就是了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
设计鸡毛。你就告诉你们老师。 你想查几个表,想要什么样的结果,我给你写sql!!!!!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询