简单的数据库课程设计----湖工大成绩管理系统



大二下的数据库课程设计,设计一个简单的成绩管理数据库系统。这门课的老师康老师,是个很好的女老师,人很温和,上课很认真,几乎每节课都会提前上课帮大家复习一下上节课的内容。上课的内容也不是只停留在为了考试,给我们说了很多在以后工作会遇到的问题以及处理事项。虽然说大学的老师都很好,但是我觉得这个老师是最好的,期待以后还有她的课!大笑

湖北工业大学成绩管理系统

 

 

  1. 课程设计目的 ****************************************

     

 二、课程内容及要求  ***************************************

 

 三、需求分析           ***************************************

 

 四、 总体分析          ***************************************

 

 五、 心得体会        ****************************************

 

 

  1. 课程设计目的:

通过一个简单的课程设计题目,加深对数据库的认识和了解。学会对简单的数据库问题进行专业术语的描述和求解。了解并学会使用数据库软件进行简单的求解问题。列如powerdesignerSQL 2008等。了解E-R模型与关系模型的转换。

 

 

二、课程设计的内容与要求

 

1)题目描述:

按照目前湖工大的成绩管理情况,设计成绩管理系统后台数据库。要求系统可以存储学生基本信息,和课程基本信息,学生选课情况以及课程得分(考试后进行补录)。课程有必修,选修和公选不同类型。各学院学生只能选修该专业的选修课。公选课可以大范围选修。且补考,重新成绩要单独对待。可以根据学分统计发放学位信息。并提供学位信息查询(包括已经发放的学位证查询,以及没有发放的学位,要显示给该生还需多少学分,什么类型课程多少学分的提示。)

2)题目要求:

1按照学生学号,查询该生所有的课程选择及得分情况,并进行平均分,绩点计算。显示该生三类课程的门数和平均分。(必修,选修和任性课),其中任选课程若不及格不记入。

2按照课程号,查询该课程所有学生的得分情况,并进行平均分,方差等计算。按照成绩进行排序。

3根据班号,统计该班学生的不及格的全部信息。

 

三、需求分析:

1E-R模型

1)局部E-R模型如下:

 

 

2)总体E-R图如下:



通过Powerdesigner设计出模型后,进行如下步骤导出SQL的脚本语言:

1)先选择菜单数据库中的Change Current DBMS




2)然后在弹出的对话框中选择确定




3)然后选择数据库菜单中的Generate Database




4)在弹出的对话框中选择需要导出到的路径,然后确定




5)确定完成后会弹出如下对话框,可以选择编辑或者关闭,按需要选择




6)至此SQL的脚本导出成功



(此处我修改了文件名,原名为create.sql





2、关系数据模型


学生表(sno,sname,sex,school,sbirth,smajor);


课程表(cno,cname,credit,ckinds(课程类型));


选课表(ID(流水号作主码),sno,cno,scoreF(期末考试成绩),scoreS(补考成绩),scoreT(清考成绩));


专业表(mno(专业编号)mname(专业名称)mschool(专业所属院系));


学位表(studentno,scredit(已有的学分),faxuewei(是否能够发学位),howmuch(若不能发学位还差多少学分),creditbixiu(已有的必修课的学分)chacreditbixiu(差多少必修课的学分),creditxuanxiu(已有的选修课的学分),chacreditxuanxiu(差多少选修课的学分),creditgong(已有的公选课学分),chacreditgong(差多少公选课的学分));


 


将导出的SQL语言导入到SQL 2008中生成表如下





四、总体分析


该课程设计湖工大成绩管理系统我是通过学生与课程还有学位之间的关系列出了几个简单的实体,建立的关系,然后在构建出局部和整体的E-R图。经过简单的分析知道,该数据库必须包含以下几个表:学生信息表,课程信息表,选课信息表,主修专业表,以及学位证表。其中选课表是由学生信息表和课程信息表共同组成,这两张表的主码构成组合码在选课表中作主码,但是为了方便,设置一个流水号ID作为选课信息表的主码。


本题的学位表比较麻烦,因为涉及的属性较多,而且较麻烦,不容易标记和设计。我所用的标记方法虽然易懂,但是太过庸俗,可是用想不到好的标记方法。


另外在用PowerDesigner生成SQL的代码时,生成的代码不能直接用到SQL Server 2008中使用,可能是由于语法的原因吧,需要对代码进行相应的修改后才可以在2008中生成相应的表。这点是值得注意的!!!


五、心得体会


经过本次简单的数据库课程设计,让我明白了好多:在设计一个数据库系统的时候,前期的分析准备工作是十分重要的。对于系统的要求要明确,这样才能做到有目的的准备,特别是对于系统中数据的存储和重要算法的设计,设计不好的话会导致大量的冗余数据,不仅浪费空间还会影响查询的效率。


在设计过程中还有一点是很重要的,当然这不仅是在数据库设计时要考虑的,在其他的设计时都要考虑,那就是要做好备份工作,因为有时一不小心的话会让你苦不堪言的,一切的成果都不复存在。本次的课程设计虽然不是很复杂,但是也有一定的难度。通过E-R模型和关系数据库的转换,也是具有一定的难度的。


经过一个星期的不断努力,虽然很辛苦,但是当完成了过后,还是非常高兴的,充满了喜悦。虽然这是个不大的数据库系统,但是在完成的同时我还是学到了很多的东西。让我学会了怎么去思考一个问题,在遇到困难时要带着怎么样的心态去很好的完成它,战胜它。与此同时,我还学会了PowerDesignerSQL Server 2008这两款软件的简单使用方法。虽然现在在学校里用的不是很多,但我相信在我以后的工作中肯定会用的到的。这为我以后的工作也打下了坚实的基础。




  • 4
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值