学生模块功能:选择课程,上传作业,下载作业说明,修改密码,成绩查看,
老师模块功能:发布作业说明,修改密码,给出成绩,下载作业, 排名,
管理员模块功能:管理老师,管理课程,管理学生,修改密码(课程是可以增减的)
StudentTable:学生ID 性别 姓名 班级 Course1 Course2 密码
CsTable:     学生ID 课程名 作业名1 作业名2 作业1成绩 作业2成绩 平时成绩 期中成绩 
             期末成绩      总成绩
CourseTable: 课程ID 课程名  
TeacherTable:教师ID 教师名 密码 所教课程 所教班级(问题是所教班级不止一个班??所么搞)
AdminTable : 管理员ID 管理员名 密码(管理员就这么几个,需要一个表吗?有点浪费,不
            用的话又不会做!!)
急,帮忙看一下

解决方案 »

  1.   

    问题是所教班级不止一个班??所么搞这样的话就要将班级重新建立一张表,用跟教师ID是FK关系具体的再分析分析吧
      

  2.   

    我这里用了5个表,管理员的不列了学生表:学生ID,作业ID,姓名,性别,密码,作业成绩,平时成绩,期中成绩,期末成绩,总成绩教师表:教师ID,教师名,密码班级表:班级名,教师ID,学生ID课程表:课程名,教师ID,学生ID作业表:作业ID,课程名,作业名
    ----------------------------------------------------------没经过评价,全作参考!
      

  3.   

    gamix(枫) 
    说的好~
    顶`了~
      

  4.   

    今天看了一下发现学生表仍然有数据冗余,还应该分为两个表:学生表:学生ID,姓名,性别,密码成绩表:学生ID,作业ID,作业成绩,平时成绩,期中成绩,期末成绩,总成绩
      

  5.   

    表不宜多,相关的可以用视图或外键等,充分发挥sqlserver2000的强大功能
      

  6.   

    jonescheng(C#前进无极限) 
    请你说清楚好吗
    我经常逃课的
      

  7.   

    成绩表:学生ID,作业ID,作业成绩,平时成绩,期中成绩,期末成绩,总成绩
    学生又不是作下一次作业,是一个一对多的关系,
    而且课程对作业也是一个一对多的关系改成这样:学生表:学生ID,姓名,性别,密码 平时成绩,期中成绩,期末成绩,总成绩
    成绩表:学生ID,作业ID,作业成绩
    你看可好
      

  8.   

    不解           只会用access