2010-05-07 160 views
0

我有一个学生和教师表。学生的主要关键是studendID(SID),而教师的主要关键是facultyID,当然。学生有一个顾​​问专栏和一个请求的顾问专栏,这是教师的外键。这很简单,对吧?数据库多对多关系

但是,现在我必须投入日期。我希望能够查看他们的顾问在某个季度(比如2009年冬季)以及他们的要求。

结果会是这样一个表:

Year | Term | SID  | Current | Requested 
------------------------------------------------ 
2009 | Winter | 86| 1  | NULL 
2009 | Winter | 860445566 | 3  | NULL 
2009 | Winter | 860369147 | 5  | 1 

然后,如果我喜欢,我还可以继续和查看不同的年份和不同的术语。

我不确定这些新表的外观如何。会有一年的秋季,春季和冬季的三列吗?秋季,春季,冬季表会有什么?

我是新来的艺术表的,所以这是莫名其妙我...

而且,我觉得我应该澄清的网站现在是如何工作至今。 管理员可以批准学生的请求,并且会发生什么情况是学生的当前顾问将被他们的请求覆盖。但是,我认为我不应该那样做,对吧?

回答

2

你有多对多的关系,需要第三个表。学生表中不存在“当前”和“请求”列,它们应该存在于新表中。这表可以是这样的:

StudentAdvisors 
StudentAdvisorID, SID, Current, Requested, Year, Term 
0

我使用&的典型方法被教导为多对多的关系是什么相当于两个表之间的转换表。