2012-03-17 78 views
2

做一些研究,我需要一些建议后。这是一个小项目,让教师在网上公布作业,学生可以查看/提交这些作业。建议建设一个数据库表

学生可以分配有多个课程,所以我的问题是:什么是建立一个表的最佳方式?

例1:

student   courses 

John Smith  Math, Chemistry, English 
Mary White  Math, Biology 

例2:

course   students 

Math   John Smith, Mary White 
Biology   Mary White 
Chemistry  John Smith 
English   John Smith 

我提前道歉,如果这是一个noobie的问题,但我想避免做错事从一开始就和我欢迎任何和所有的建议!

谢谢你的时间。

+0

我真的建议得到上的数据库基本教科书和读取数据建模的章节。这是CompSci二年级材料。 – millimoose 2012-03-17 23:46:13

回答

2

它一般不适合把多个项目在一列在关系数据库中。因此,创建一个表是这样的:

course   student 

Math   John Smith 
Math   Mary White 
Biology   Mary White 
Chemistry  John Smith 
English   John Smith 

然后,您可以使用此表JOIN表达式来获取你想要的信息。你可能想要有更多的表格来描述关于课程和学生的重要信息。喜欢的东西:

course   instructor   time 

Math   Albert Einstein  10:30 

student   id_number   phone 

John Smith  1234-5678   555-1212 

......或任何信息,你需要保持关于课程的学生。

+0

这是完美的!谢谢你的帮助,我是新来的数据库,我很高兴地获悉,JOIN表达式甚至存在。 – fswmacguy 2012-03-17 23:48:08