如何创建关系表间的外键约束更加合适 有四张数据表:Class(班级表),Students(学生表),Course(课程表),Result(成绩表)为了建立4张表的关系,平常建立多表外键时;不知道如果在哪些表间建立外键,总是很混乱。所以请问:如何建立表之间的外键比较好?外键约束建立的规则是什么? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 各表之间的关系弄清楚就不乱了。1、学生属于某个表,那么 学生表中有一个外键关联到班级表2、学生有成绩,但是成绩是根据课程来的。所以我们可以建一个关联表。即关联表A(学生id、课程id、成绩)---这个表也就是成绩表,学生id外键关联学生表,课程id外键关联课程表。 Class(#ClassID)Students(#StudentID,ClassID) FOREIGN KEY FK_Students_ClassID REFERENCES Class(ClassID)Course(#CourseID)Result(#StudentID,#CourseID,Score) FOREIGN KEY FK_Result_StudentID REFERENCES Students(StudentID) FOREIGN KEY FK_Result_CourseID REFERENCES Course(CourseID)其中,带#的字段表示主键。(#只是说明,建表时字段名不要带特殊字符) 一般规则是:A.cola REFERENCES B(colb)通常情况下colb是B的主键。根据需要,在A.cola上建索引。 高手帮我看个函数,提示说if附近有问题 表之间的关联 能用sql画个圆吗? 请各位用最通俗的叙述说说游标的作用和意义 怎样消除笛卡儿积? 求一SQL语句.. 求救!!PB调用sp_addlinkedserver失败(MS SQL Server上链接Access,请有经验的前辈帮忙)。 再问:如何用Oracle调用外部的C过程? 棘手问题 怎么设置SQL数据库的默认日期格式为 年/月/日 时/分/秒格式?并且DateDiff函数怎么使用? 怎么实现如下数据刷选 SQL SERVER的日志查询及Undo
即关联表A(学生id、课程id、成绩)---这个表也就是成绩表,学生id外键关联学生表,课程id外键关联课程表。
Students(#StudentID,ClassID)
FOREIGN KEY FK_Students_ClassID REFERENCES Class(ClassID)
Course(#CourseID)
Result(#StudentID,#CourseID,Score)
FOREIGN KEY FK_Result_StudentID REFERENCES Students(StudentID)
FOREIGN KEY FK_Result_CourseID REFERENCES Course(CourseID)其中,带#的字段表示主键。(#只是说明,建表时字段名不要带特殊字符)
A.cola REFERENCES B(colb)
通常情况下colb是B的主键。
根据需要,在A.cola上建索引。