当前位置: 代码迷 >> Sql Server >> 小弟我还应该建立什么表
  详细解决方案

小弟我还应该建立什么表

热度:56   发布时间:2016-04-24 08:47:19.0
我还应该建立什么表?



这是er图,学生和课程,    “成绩”在Er图中不算实体。

我现在建立数据库的表:

student:

id stu_name sex

course:

id course_name 

选课表:

(stu_id,course_id) teacher_id    scores


建立了3张表,似乎没问题了。

可是假设我需要查询选修某一门课程的所有学生的成绩表,我改如何办?

我还应该建立什么表? 


------解决思路----------------------
选课表,增加一个“成绩”列。   这只是一个属性。
------解决思路----------------------

你可以增加一个 成绩表,因为成绩表是记录这个人考了多少分,有可能这个人补考了,那么就会有2条记录,还可以记录什么时候考的,监考老师是谁,谁给评的卷子等等
------解决思路----------------------
成绩表 是课程与学生的关联表,不是实体。

学生是实体,课程也是实体。

上课地点、老师,这些属性,放在课程表里面就可以了。

ER 图是很有必要的,有了 ER 图再去设计数据库。
------解决思路----------------------
引用:
Quote: 引用:

选课表,增加一个“成绩”列。   这只是一个属性。


引用:
你可以增加一个 成绩表,因为成绩表是记录这个人考了多少分,有可能这个人补考了,那么就会有2条记录,还可以记录什么时候考的,监考老师是谁,谁给评的卷子等等


以前只是操作数据库,从来没有设计过。 这是第一次设计

一直以为一个表就是一个实体。

从er图看, “成绩”是选修课的属性,仅此而已。

那么该不该建立一个成绩表呢? 

1.   如果建立了成绩表,成绩岂不是被耽误成实体来看待?

2. 选修课的属性到底有哪些? 

开始该课的时间,结束该课的时间, 选修人数, 选修课自己的id,选修课的地点, 选修课的成绩,选修课教师id。


分析完这些后, 可以下个定论,我提供的图是不完整的。

3. er图有没有必要绘制,如果绘制的话,请问是不是一个er实体就要对应数据库中的一个表。




 





实际上在设计表的时候,就是e-r图,有实体,以及关系,这些都是表,关系就是实体之间的对应关系,比如 成绩,

那么,一般都是 哪个学生,考的哪门课程,监考老师是谁,评卷老师谁,最后成绩是多少,这里会有多个实体的对应,学生、课程、老师
------解决思路----------------------
引用:
Quote: 引用:




实际上在设计表的时候,就是e-r图,有实体,以及关系,这些都是表,关系就是实体之间的对应关系,比如 成绩,

那么,一般都是 哪个学生,考的哪门课程,监考老师是谁,评卷老师谁,最后成绩是多少,这里会有多个实体的对应,学生、课程、老师



这些都是表,关系就是实体之间的对应关系,比如 成绩,

学生和课程的关系是? 选修,

成绩是选修的 一个属性,我们建立了一个表来存储成绩。

另外: 8楼的设计有无问题,没问题就结贴。  


问题不大。
  相关解决方案