日期:2014-05-16  浏览次数:20450 次

麻烦看下这么个情况下,数据库该如何design。。。谢谢
就是学生,program(bachelor,diploma。。。)和course

business rule

一名学生可以选一个到多个program,一个program可以有一名到多名学生。
一名学生可以选一门到多门course,一个course可以有一名到多名学生

一门course 可以有零个到多个 prerequisite,一个-prerequisite可以接零个或多个course

我里面的其中几个table的date也用来做了PK,是考虑一个人假如参加了某个bachelor,但是他退学了,那么过了多少年他又回到学校参加了同样的专业的bachelor。

一下两张design那种好呢?还是用其他的方式,谢谢!!

另外每一科的成绩是放在enrollment 或 usercourse 其中之一么??

或者还是要单建table (USERID,COURSEID,GRADES)?然后这个table一边和course连接,一边和user 连接。

问题比较多谢谢了。。。




------解决方案--------------------
或者还是要单建table (USERID,COURSEID,GRADES)?然后这个table一边和course连接,一边和user 连接。

个人比较喜欢这样的方式。