1、学号 200710165114武 汉 科 技 大 学 城 市 学 院课程设计报 告课程名称 数据库应用课程设计 题目 学生考试管理信息系统 院系 城院信息科学与工程系 专业 信息管理与信息系统 班级 07 级信管 1 班 姓名 张 峰 指导教师 余红珍 2009 年 7 月 1 日1设计题目:全国统考管理设计主要内容:一、开发平台:VB+ SQL SERVER 2000二、功能要求:1、设计内容设计一个全国统考管理数据库应用系统。该系统的用户由一般用户和管理员组成,然后不同的用户拥有不同的权限,各自完成各自的管理功能。首先是欢迎界面,然后选择登录,登录的时候首先要判断用户的身份,合法的用户然后
2、进入到系统主界面中,不同的用户看到不同的系统功能。用 sql server2000 创建后台数据库,然后利用程序设计语言(VB)编写程序实现对数据库的操作,按照要求完成所有的功能和模块。2、全国统考管理数据库应用系统主要功能该系统除完成全国统考管理的各项功能外,还应为用户提供统考信息查询功能,为不同用户设定不同的权限,满足不同的要求。(1)登录界面。(2)学生管理:考场查询、成绩查询。(3)管理员管理(按英语和计算机统考管理):报名(增、删、改、查) 、安排考场(增、删、改、查) 、成绩登录(增、删、改、查) 、本用户密码修改。3、全国统考统数据库应用系统表单(可以按照需求增加)(1)学生档案
3、:学生代码、姓名、性别、出生日期、籍贯、政治面貌、专业班级(2)统考成绩:学生代码(外码) 、姓名、考号、考试日期、考试科目、考试成绩(3)班级:班号、所属系、专业、人数、班主任(4)考场:编号、地址、起始考号、终止考号、考试科目(5)准考证:考号、学生代码、姓名、考场(6)管理员表:用户名、密码(7) 报名表:姓名,学号,籍贯,政治面貌,备注三、课程设计报告主要内容:1 全国统考管理数据库应用系统需求分析(给出系统的功能模块图,对各个功能作出详细介绍)2 全国统考管理数据库应用系统界面设计(给出界面截图及其主要控件的属性设置表格)3 全国统考管理数据库应用系统数据库设计(给出数据库各个表单中
4、数据的字段名,数据类型及其相应的说明)4 全国统考管理数据库应用系统程序设计(按照功能模块给出详细的程序代码)1.全国统考管理数据库应用系统需求分析2全国统考管理数据库应用系统登 陆管理员登陆英语统考管理 计算机统考管理报名管理 安排考场 成绩登录学生登陆考场查询 成绩查询报名管理 安排考场 成绩登录密码修改图 1.1 学生考试管理信息系统1.1 欢迎界面系统启动之后便可进入欢迎界面,单击“登陆系统”按钮便可进入选择登陆界面。1.2 选择登录可选择管理员登陆和学生登录登陆。1.2.1 选中管理员登录后便进入管理员登陆界面管理员通过输入用户名和密码进入管理员管理界面进行管理31.2.2 选中学生
5、登陆后便进入学生登陆界面学生通过输入姓名和学号进入学生管理界面进行管理1.3 管理员管理界面可以进行英语统考管理、计算机统考管理、修改密码1.3.1 试英语统考管理利用 VB 界面,管理员可以查询,添加,删除,修改考试信息,修改了数据库中的信息。1.3.2 计算机统考管理利用 VB 界面,管理员可以查询,添加,删除,修改考试信息,修改了数据库中的信息。1.3.3 修改密码管理员可以修改自己的登录密码。1.4 学生界面学生可以进行考场查询,成绩查询。1.4.1 考场查询学生通过登录查询考场信息。1.4.2 成绩查询学生通过登录查询成绩信息。2全国统考管理数据库应用系统界面设计4图 2.1 欢迎界
6、面图 2.2 登陆界面图 2.3 学生登陆界面5图 2.4 学生管理界面图 2.5 学生考场查询界面表 2.1 考场查询界面属性表对象 属性 设置值dadagrid datasource Adodc1tapstop trueVisual trueAdodc1 caption Adodc1commandtype 2-adcmdtablerecordsource 考场表单visible false6图 2.6 管理员登陆界面图 2.6 管理员管理界面表 2.2 管理员管理界面属性表对象 属性 设定值Command1 Caption 英语统考管理Command2 Caption 计算机统考管理Com
7、mand3 Caption 修改密码图 2.8 管理员密码修改界面7表 2.3 考场查询界面属性表对象 属性 设定值Text1 causesvalidati TrueText2 causesvalidati TrueText3 causesvalidati true图 2.9 报名管理界面表 2.4 报名管理界面属性表对象 属性 设置值dadagrid datasource Adodc1Adodc1 caption Adodc1commandtype 2-adcmdtablerecordsource 报名表单visible falseSSTab1 caption 添加caption 删除cap
8、tion 修改Caption 查询83全国统考管理数据库应用系统数据库设计学生考试管理信息系统总共涉及 7 张表,分别是准考证表单,学生档案表单,报名表单,班级表单,管理员表单,统考成绩表单,考场表单。表 3.1 准考证表单字段名称 标始名称 数据类型 是否允许为空 字段说明testno 考试号 char 否 主码sno 学号 char 否sname 姓名 Char 否testplace 考场号 char 否 外码表 3.2 学生档案表单字段名称 标始名称 数据类型 是否允许为空 字段说明sno 学生代码 char 否 主码sname 姓名 char 否ssex 性别 Charsbirthda
9、y 生日 Charsadress 籍贯 char 外码sbackgroud 政治背景 Char表 3.3 报名表单字段名称 标始名称 数据类型 是否允许为空 字段说明姓名 姓名 char 否学号 学号 char 否 主码籍贯 籍贯 Char 否政治面貌 政治面貌 Char 否备注 备注 char 否 外码表 3.4 班级表单字段名称 标始名称 数据类型 是否允许为空 字段说明classno 班号 Char 否 主码Sdept 所属系 Char 否Subject 专业 Char 否Pecount 人数 Char 否director 班主任 Char 否表 3.5 管理员表单字段名称 标始名称 数
10、据类型 是否允许为空 字段说明Username 用户名 Char 否 主码Password 密码 Char 否9表 3.6 统考成绩表单字段名称 标始名称 数据类型 是否允许为空 字段说明sno 学生代码 Char 否 主码sname 姓名 Char 是stestno 考号 Char 是Stesttime 考试日期 Char 是stestcourse 考试科目 Char 是stestgrade 考试成绩 Char 是表 3.7 考场表单字段名称 标始名称 数据类型 是否允许为空 字段说明Number 学号 char 否 主码Adress 籍贯 char 否Begintestno 其实考号 ch
11、ar 是Endtestno 终止考号testsubject 考试科目4全国统考管理数据库应用系统程序设计(部分代码)4.1 欢迎界面欢迎界面是整个系统的首页,用户可通过它进入到登陆系统。4.2 登陆界面进入此界面后,使用者可根据自己的身份选择登陆方式。学生选择学生登陆,管理员选择管理员登陆。4.3 学生登陆界面程序设计学生用户在此界面输入自己的学号和姓名通过验证后方可进入下一个界面。部分重要代码如下Private Sub Command1_Click()If Text1.Text = “ ThenMsgBox “请输入学号! “Text1.SetFocusExit SubEnd If10If
12、Text2.Text = “ ThenMsgBox “请输入姓名! “Text2.SetFocusExit SubEnd If将学号和姓名赋给全局变量Sno = Text1.TextSname = Text2.TextAdodc1.CommandType = adCmdTextAdodc1.RecordSource = “select * from 学生档案表 where sno=“ & Trim(Text1.Text) & “ and sname=“ & Trim(Text2.Text) & “ “Adodc1.Refresh判断管理员所填信息是否正确If Adodc1.Recordset.
13、EOF = True ThenMsgBox “学号与姓名不相符,请重新输入!“Text1.Text = “Text2.Text = “Text1.SetFocusElseMsgBox “登陆成功! “Form13.HideForm6.ShowText1.Text = “Text2.Text = “End IfEnd Sub4.4 管理员登陆界面管理员需要输入自己的用户名和密码,经过系统验证无误后就可以进入下一个界面了。它的代码与管理员登陆代码类似,输入的用户名和密码必须是管理员表中相应的信息,否则就无法成功登陆。4.5 管理员登陆界面管理员登陆进去后,可以进行英语统考管理、计算机统考管理、修改
14、密码。4.6 管理员密码修改界面程序设计管理员如需修改自己的密码可在此界面进行,管理员通过登陆界面登陆到此,然后在此界面中输入原始密码和新密码并验证新密码,确认后如果无误就会提示用户修改成功,并且其密码在管理员表表单中也会有相应的修改。 (代码11如下)Private Sub Command1_Click()If Trim(Text2.Text) = “ ThenMsgBox “请填旧密码!“Text2.Text = “Text2.SetFocusExit SubEnd If判断新密码是否为空If Trim(Text3.Text) = “ ThenMsgBox “请填写新密码!“Text3.S
15、etFocusExit SubEnd If判断确认密码是否为空If Trim(Text4.Text) = “ ThenMsgBox “请再次确认密码!“Text4.Text = “Text4.SetFocusExit SubEnd If判断密码长度是否符合要求If Len(Text3.Text) 10 ThenMsgBox “新密码不符合要求,为 2-10 个字符!“Text3.Text = “Text3.SetFocusExit SubEnd If判断两次输入是否相同!If Text3.Text Trim(Adodc1.Recordset.Fields(“Password“).Value)
16、ThenMsgBox “旧密码错误,请重新输入!“Text2.Text = “Text2.SetFocus12Exit SubEnd If修改密码Adodc1.Recordset.UpdateAdodc1.Recordset.Fields(“Username“) = Trim(Text1.Text)Adodc1.Recordset.Fields(“Password“) = Trim(Text4.Text)Adodc1.Recordset.UpdateAdodc1.RefreshMsgBox “密码修改成功!“文本框清空Text4.Text = “Text2.Text = “Text3.Text
17、 = “Unload MeEnd Sub4.7 英语统考查询界面管理员可通过此界面所提供的内容查询管理所有统考信息。所有的信息通过控件 DataGrid 与 Adodc 控件和相应的数据库连接起来,设置相应的属性后所有信息便可显示在 DataGrid 上供用户查看。 (代码如下)Private Sub Command1_Click()If Text16.Text = “ ThenMsgBox “请输入姓名“Text16.SetFocusExit SubEnd IfAdodc1.CommandType = adCmdTextAdodc1.RecordSource = “select * from
18、 报名表 where 姓名 =“ & Trim(Text16.Text) & “Adodc1.RefreshIf Adodc1.Recordset.EOF = True ThenMsgBox “无此姓名,请重新输入!“Text16.SetFocusText16.Text = “13Exit SubEnd IfEnd Sub图 4.1 管理员查询界面4.8 英语统考添加界面管理员可通过此界面所提供的内容查询管理所有统考信息。所有的信息通过控件DataGrid 与 Adodc 控件和相应的数据库连接起来,设置相应的属性后所有信息便可显示在 DataGrid 上供用户查看。 (代码如下)Privat
19、e Sub Command3_Click()If Text1.Text = “ ThenMsgBox “请输入姓名“Text1.SetFocusExit SubEnd IfAdodc1.CommandType = adCmdTextAdodc1.RecordSource = “select * from 报名表 where 姓名 =“ & Trim(Text1.Text) & “Adodc1.RefreshIf Adodc1.Recordset.EOF = False ThenMsgBox “姓名已存在,请重新输入!“Text1.SetFocusText1.Text = “Exit SubEn
20、d IfIf Text2.Text = “ ThenMsgBox “学号“Text2.SetFocusExit Sub14End IfIf Text3.Text = “ ThenMsgBox “请输入籍贯“Text3.SetFocusExit SubEnd IfIf Text4.Text = “ ThenMsgBox “请输入政治面貌“Text4.SetFocusExit SubEnd IfIf Text5.Text = “ ThenMsgBox “备注“Text5.SetFocusExit SubEnd IfDim res As Integerres = MsgBox(“确实添加此记录 !“
21、, vbExclamation + vbYesNo + vbDefaultButton2) 提示用户If res = vbYes Then 如果确实要添加Adodc1.Recordset.AddNewAdodc1.Recordset.Fields(“姓名“).Value = Trim(Text1.Text)Adodc1.Recordset.Fields(“学号“).Value = Trim(Text2.Text)Adodc1.Recordset.Fields(“籍贯“).Value = Trim(Text3.Text)Adodc1.Recordset.Fields(“政治面貌“).Value
22、= Trim(Text4.Text)Adodc1.Recordset.Fields(“备注“).Value = Trim(Text5.Text)Adodc1.Recordset.UpdateAdodc1.RefreshMsgBox “添加成功“Text1.SetFocusText2.SetFocusText3.SetFocusText4.SetFocusText4.SetFocusText5.SetFocusExit SubEnd IfEnd Sub15图 4.2 英语统考添加界面5小结每次做课程设计之后总有番感慨,这次亦然。以前只是对游戏中那些注册过程和登录过程很感兴趣,没想到这次自己也可以
23、尝试一下了,想象着自己设计出的美丽界面,激动是自然的。但是没有一件事是真正简单的,从三个星期之前踏入机房那刻开始,大大小小的问题就没断过,因此解决问题成了整个课程设计的主要内容。问题来了就要迎上去,怎么解决问题呢,刚开始大家都是不会做,互相问来问去也没啥进展,讨教老师吧又不好意思,所以很是急啊。做的这个系统操作界面是 VB,以前也学过 VB,缺乏知识的整体应用和实际工程项目的开发训练,以往的教学设计按部就班地学习 VB 程序设计的知识点,没有依托完整的实16际项目,令学生对知识点的学习感到支离破碎、不成整体,容易遗忘,而且没有工程项目开发实际技能的历练和体验,无法直接感受所学知识在实际工作中的
24、地位和作用,影响学习效果,因此也没有什么印象了。这从何下手啊,真是让人急啊,我想既然不会那就学习学长们的吧,于是就开始学习一位学姐的课程设计,看看人家是怎么做的。VB 程序设计的知识点主要应该包括:对象和窗体概念、代码基础、程序基本结构、数组、过程、控件、菜单设计、对话框设计、文件读写、数据库等。我在实际设计过程中慢慢回忆起老师以前所教给我们的内容:比如通过具体的例子,讲解如何对对象触发事件,如何利用语句改变对象的属性,VB 事件驱动的程序设计,逐步建立起 VB 编程基本方法和步骤。这样我就能慢慢开始动手了,然后思考着整个设计的框架,该如何让整个系统满足设计要求,并且力求美观合理。这之间依然是
25、问题重重,经常是有了好的想法却因为能力和时间所限难以实现。比如我很想做出像网页一样那种弹出的效果,但是无奈发现很难做到,许多的想法放弃也罢。我也就在慢慢的摸索中做完了这个课程设计。之后想想人的一生有许许多多、各种各样的经历。每种经历都会给人留下许多许多,都会给人一种独特的感受。你所经历的,你所感受的,都会为你将来的生活的前进起到推波助澜的作用的。课程设计让我感受到了在平时生活中所不能感受的许多东西,它不能用学到什么来形容,应该是留给我什么,留给我一种感觉,平静、高兴、激动等等。最后我要感谢给我鼓励与帮助的的老师和同学们,没有他们,我这个设计也的确很难做好,这让我明白团队的重要性,合作才最重要。
26、6参考文献1 何玉洁.数据库原理与应用教程. 北京:北京机械工业出版社,20052 钱雪忠、黄学光、刘肃平.数据库原理及应用. 北京: 北京邮电大学版社,20053 潭浩强.Visual Basic 可视化程序设计. 北京:中国铁道出版社,200517课程设计评分表评分标准:1. 学生是否严格遵守课程设计纪律,按照规定时间完成设计任务(占 30%)2. 程序设计的质量与规范:(占 40%)(1)是否采用了良好的设计方法,独立完成程序设计(2)程序界面设计是否合理、美观(3)数据库设计是否合理,具有良好的扩展性(4)程序是否运行正常,未见运行错误3. 课程设计报告书的质量与规范 (占 30%)18教师评分:1.学生出勤得分:(A) (B) (C) (D) 得分_2.程序设计得分:(A) (B) (C) (D) 得分_3.设计报告得分:(A) (B) (C) (D) 得分_总分:_教师评语:根据该生在课程设计期间,是否严格遵守课程设计纪律,按照规定时间完成设计任务,完成的程序设计的质量与规范,提交的课程设计报告书的质量与规范等多方面的评分,该生本次课程设计的评分为:_教师签名:日期:年 月日