想做一成绩查询系统,ASP+SQL2000
有一问题:不知道记录成绩的信息应该放在哪里,
现有student的一个表,里面记录了一些学生的信息,
现在想成绩的信息有如下东西,有科目,成绩,补考成绩,学分,学期等,如果把成绩的信息放在对应该的学生里,如果这个学生的科目有30科的话就会有很多字段,这样很麻烦.不知道有没有高手指点一下这个数据库应该如何去建立.

解决方案 »

  1.   

    --try
    可以另外建一个成绩表(学号,科目代号,成绩,补考成绩......)
    再建一个科目表(科目代号,科目名称,学分,任教老师......)
      

  2.   

    原则上是这样做表的1.学生基本信息学生ID 学生姓名....2.课程基本信息课程ID 课程名 任课教师....3.选课表及成绩学生ID 课程ID 成绩 补考成绩
      

  3.   

    to 2楼的,谢谢回复,这些表我都有,
    to 3楼的,谢谢回复,这些表我都有,但这个成绩表是不是每科一个表呢,还是怎么办,
    to 1楼的,谢谢回复,父子表是什么概念,不要笑话我我是初学,
      

  4.   

    正如sxycgxj(云中客)的解释。
      

  5.   

    并不是一个课上一个表,如下:课目表:
    课目编号  课程名  学分  
    1     英语     6
    2     数学     6成绩表
    学号  课目编号   成绩  补考成绩  学期
    1          1        55       78    2006
    2          1        65        0        2006
    1          2        85        0        2006学生信息表
    学号    姓名
    1       刘罗锅
    2       左宗棠查询的语句如下
    select a.学号,a.姓名,b.课程名,c.成绩,c.补考成绩,c.学期
    from 学生信息表 a 
    left join 成绩表 b on a.学号=b.学号
    left join 课目表 c on c.课目编号=b.课目编号
      

  6.   

    表设计:
    ---------------------------------------------------------------------------
    A.学生表(学生ID,学生姓名,性别....)
    B.课程表(课程ID,课程名,课程.....)
    C.成绩表(学生ID,课程ID,学期,成绩,补考成绩....)
    ---------------------------------------------------------------------------用表A来记录,学生的一些资料。
    用表B来记录,关于课程分类的一些资料表C中使用学生ID+课程ID,来唯一标识一个学生的一次成绩记录..,同时A表(主键:学生ID)和B表(主键:课程ID),都通过主键与C表进行关联。
    那么,可以很方便的查找你想要的任一资料。如,要查找的信息列表为  (学生姓名,课程名,学期,成绩,补考成绩),用一条SELECT    SELECT 学生姓名,课程名,学期,成绩,补考成绩
        FROM 学生表 A,课程表 B,成绩表 C
        WHERE A.学生ID=C.学生ID and B.课程ID=C.课程ID即可...