数据库课程设计-成绩管理系统说明书.doc

上传人:椰子壳 文档编号:5023026 上传时间:2020-01-29 格式:DOC 页数:42 大小:1.21MB
返回 下载 相关 举报
数据库课程设计-成绩管理系统说明书.doc_第1页
第1页 / 共42页
数据库课程设计-成绩管理系统说明书.doc_第2页
第2页 / 共42页
数据库课程设计-成绩管理系统说明书.doc_第3页
第3页 / 共42页
数据库课程设计-成绩管理系统说明书.doc_第4页
第4页 / 共42页
数据库课程设计-成绩管理系统说明书.doc_第5页
第5页 / 共42页
点击查看更多>>
资源描述

《数据库课程设计-成绩管理系统说明书.doc》由会员分享,可在线阅读,更多相关《数据库课程设计-成绩管理系统说明书.doc(42页珍藏版)》请在三一文库上搜索。

1、温州大学数据库课程设计说明书题 目: 成绩管理系统学 院: 机电工程学院专 业: 工业工程班 级: 09工业工程学生姓名: 学 号: 指导教师: 完成日期: 20120105目录第一章 系统分析1建立新系统的必要性学生成绩管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生成绩管理系统应该能够为用户提供充足的信息和快捷的查询手段,但是几年前,各个学校的学生成绩管理基本上都是靠手工进行,随着各个学校的规模增大,有关学生成绩管理工作所涉及的数据量越来越大,有的学校不得不靠增加人力、物力来进行学生成绩管理。这种管理方式存在着许多缺点,如:效率低、保密性差,另

2、外所用其时间长,产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。如今学校的学生越来越多,成绩管理的工作量越来越大,手工管理成绩的弊端也越来越明显。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对学生成绩信息进行管理,具有手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生成绩管理的效率。 同时因为成绩处理具有通用性,所以此套系统不仅可以处理高校成绩,对于各级各类学校的成绩处理也有一定的作用。为

3、此,只要掌握了此套成绩管理系统的开发应用,其他成绩管理系统的开发应用也就迎刃而解了。2业务流程分析(业务流程图)学生用户输入用户名及密码流程开始教师用户输入用户名及密码管理员用户输入用户名及密码查询成绩录入,修改成绩增加,修改课程信息流程结束修改密码修改密码 3数据流程图 学生查询课程信息成绩表教师管理员录入,修改成绩增加,修改课程信息修改学生用户名及密码表修改教师用户名及密码表4数据字典 数据项是数据库的关系中不可分割的数据单位,下表分别列出了数据的名称,数据类型,长度,取值能否为空,利用SQL server 2000建立lrbray数据库,其基本表清单及表结构描述如下: 数据库中用到的表:

4、数据库表名备注User_messege学生用户名及密码表manager教师用户名及密码表pt管理员用户名及密码表Student_messege学生信息表course成绩表kcxx课程信息表 User_messege,manager,pt的三张数据表,结构如下:字段名字段类型Not Null说明aCharNot Null用户名bcharNot Null密码 Studeng_messege 基本情况数据表,结构如下:字段名字段类型Not Null说明SnoCharNot Null学号(设为主键)SnameChar姓名classchar班级Course数据表,结构如下:字段名字段类型Not Null

5、说明SnoCharNot Null学号(设为主键)CnameChar课程名(设为主键)gradechar分数Kcxx数据表,结构如下:字段名字段类型Not Null说明CnoChar课程号cnamechar课程名(设为主键)第二章 系统设计1新系统功能设计 本系统是一个简易的用于成绩查询的系统,其功能有: 教师对学生成绩的录入,包括课程名,课程号,成绩; 学生对自己成绩的查询,包括课程名,成绩; 管理员对课程信息的增加;系统功能模块设计:;成绩管理系统学生教师教务处查询成绩录入,修改成绩更改课程信息修改密码修改密码2数据库设计(E-R) 学生用户名密码成绩分数管理员用户名密码密码用户名课程教师

6、课程名课程号Mnm3.代码设计 登录窗口代码:; unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, DB, ADODB, StdCtrls, jpeg, ExtCtrls;type TForm1 = class(TForm) Label1: TLabel; Label2: TLabel; ComboBox1: TComboBox; Edit1: TEdit; GroupBox1: TGroupBox; RadioButton1:

7、 TRadioButton; RadioButton2: TRadioButton; Button1: TButton; ADOConnection1: TADOConnection; ADOQuery1: TADOQuery; RadioButton3: TRadioButton; Image1: TImage; procedure Button1Click(Sender: TObject); private Private declarations public Public declarations end;var Form1: TForm1;implementationuses uni

8、t5,unit6, Unit4;vara,b:string;$R *.dfmprocedure TForm1.Button1Click(Sender: TObject);beginif radiobutton1.checked then/如果radiobutton1被选中,就执行。begintry with adoquery1 do/这里就开始对adoquery进行编辑了 begin close; sql.clear; sql.add(select * from user_master where a=:a and b=:b); parameters.ParamByName(a).Value:

9、=trim(combobox1.Text);/比对用户名 parameters.ParamByName(b).Value:=trim(edit1.Text);/比对密码 if combobox1.Text = then begin application.MessageBox(请输入用户名,提示信息,64);/用户名为空时弹出提示 combobox1.SetFocus; exit; end; if edit1.Text = then begin application.MessageBox(请输入密码,提示信息,64);/假如密码为空时弹出提示 edit2.SetFocus; exit; en

10、d; open; end; if adoquery1.RecordCount0 then begin a:=combobox1.Text; b:=edit1.Text; application.MessageBox(登录成功,提示信息,64); form5.show;/弹出form4窗口,也就是我们上节课设计好的管理员窗口 self.Hide; end else application.MessageBox(输入的用户名或密码错误,提示信息,64); except application.MessageBox(登录失败,提示信息,64); end; end else if radiobutto

11、n2.checked then/对应第一个if,意思就是如果radiobutton1没被选中,也就是radiobutton2被选中 begin try with adoquery1 do begin close; sql.clear; sql.add(select * from manager where a=:a and b=:b); parameters.ParamByName(a).Value:=trim(combobox1.Text); parameters.ParamByName(b).Value:=trim(edit1.Text); if combobox1.Text = then

12、 begin application.MessageBox(请输入用户名,提示信息,64); combobox1.SetFocus; exit; end; if edit1.Text = then begin application.MessageBox(请输入密码,提示信息,64); edit1.SetFocus; exit; end; open; end; if adoquery1.RecordCount0 then begin a:=combobox1.Text; b:=edit1.Text; application.MessageBox(登录成功,提示信息,64); form6.sho

13、w;self.Hide; end else application.MessageBox(输入的用户名或密码错误,提示信息,64); except application.MessageBox(登录失败,提示信息,64); end; end elsebegin try with adoquery1 do begin close; sql.clear; sql.add(select * from pt where a=:a and b=:b); parameters.ParamByName(a).Value:=trim(combobox1.Text); parameters.ParamByNam

14、e(b).Value:=trim(edit1.Text); if combobox1.Text = then begin application.MessageBox(请输入用户名,提示信息,64); combobox1.SetFocus; exit; end; if edit1.Text = then begin application.MessageBox(请输入密码,提示信息,64); edit1.SetFocus; exit; end; open; end; if adoquery1.RecordCount0 then begin a:=combobox1.Text; b:=edit1

15、.Text; application.MessageBox(登录成功,提示信息,64); form4.show;self.Hide; end else begin application.MessageBox(输入的用户名或密码错误,提示信息,64); end; finally end; end;end;end. 学生操作选择窗口代码: unit Unit5;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, jpeg, ExtCt

16、rls;type TForm5 = class(TForm) GroupBox1: TGroupBox; Label1: TLabel; Button1: TButton; Button2: TButton; Image1: TImage; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); private Private declarations public Public declarations end;var Form5: TForm5;implementationuses

17、unit2,unit7;$R *.dfmprocedure TForm5.Button1Click(Sender: TObject);beginform2.show;end;procedure TForm5.Button2Click(Sender: TObject);beginform7.show;end;end. 教师操作选择窗口代码: unit Unit6;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, jpeg, ExtC

18、trls;type TForm6 = class(TForm) Button1: TButton; Button2: TButton; GroupBox1: TGroupBox; Label1: TLabel; Image1: TImage; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); private Private declarations public Public declarations end;var Form6: TForm6;implementationuses

19、 unit3,unit8;$R *.dfmprocedure TForm6.Button1Click(Sender: TObject);beginform3.show;end;procedure TForm6.Button2Click(Sender: TObject);beginform8.show;end;end. 学生修改密码窗口代码: unit Unit7;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, DB, ADODB, StdCtrls

20、, jpeg, ExtCtrls;type TForm7 = class(TForm) Edit1: TEdit; Edit2: TEdit; Edit3: TEdit; Label1: TLabel; Label2: TLabel; Label3: TLabel; Button1: TButton; Button2: TButton; ADOConnection1: TADOConnection; ADOQuery1: TADOQuery; DataSource1: TDataSource; Label4: TLabel; ComboBox1: TComboBox; Image1: TIma

21、ge; procedure Button2Click(Sender: TObject); procedure Button1Click(Sender: TObject); private Private declarations public Public declarations end;var Form7: TForm7;implementationuses unit5;$R *.dfmprocedure TForm7.Button2Click(Sender: TObject);beginform5.show;end;procedure TForm7.Button1Click(Sender

22、: TObject);begintry with adoquery1 do begin sql.clear; sql.add(select * from user_master where a=:a and b=:b); parameters.ParamByName(a).Value:=trim(combobox1.Text); parameters.ParamByName(b).Value:=trim(edit1.Text); adoquery1.open; if adoquery1.RecordCount=0 then begin application.MessageBox(请输入原密码

23、,提示信息,64); edit1.SetFocus; exit; end; open; end; if Edit3.Text=Edit2.Text then begin adoquery1.sql.Add(update user_master set b=+edit2.Text+where b=+edit1.Text+); adoquery1.ExecSQL; adoquery1.Free; application.MessageBox(密码修改成功,提示信息,64); Edit1.Text:=; Edit2.Text:=; Edit3.Text:=; close; end else appl

24、ication.MessageBox(两次输入密码不一致,提示信息,64); except application.MessageBox(修改密码失败,提示信息,64); end;end;end. 教师修改密码窗口代码: unit Unit8;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, DB, ADODB, jpeg, ExtCtrls;type TForm8 = class(TForm) DataSource1: TDat

25、aSource; ADOConnection1: TADOConnection; ADOQuery1: TADOQuery; Label1: TLabel; Edit1: TEdit; Label2: TLabel; Edit2: TEdit; Label3: TLabel; Edit3: TEdit; Button1: TButton; Button2: TButton; Label4: TLabel; ComboBox1: TComboBox; Image1: TImage; procedure Button2Click(Sender: TObject); procedure Button

26、1Click(Sender: TObject); private Private declarations public Public declarations end;var Form8: TForm8;implementationuses unit6;$R *.dfmprocedure TForm8.Button2Click(Sender: TObject);beginform6.show;end;procedure TForm8.Button1Click(Sender: TObject);begin try with adoquery1 do begin sql.clear; sql.a

27、dd(select * from manager where a=:a and b=:b); parameters.ParamByName(a).Value:=trim(combobox1.Text); parameters.ParamByName(b).Value:=trim(edit1.Text); adoquery1.open; if adoquery1.RecordCount=0 then begin application.MessageBox(请输入原密码,提示信息,64); edit1.SetFocus; exit; end; open; end; if Edit3.Text=E

28、dit2.Text then begin adoquery1.sql.Add(update manager set b=+edit2.Text+where b=+edit1.Text+); adoquery1.ExecSQL; adoquery1.Free; application.MessageBox(密码修改成功,提示信息,64); Edit1.Text:=; Edit2.Text:=; Edit3.Text:=; close; end else application.MessageBox(两次输入密码不一致,提示信息,64); except application.MessageBox

29、(修改密码失败,提示信息,64); end;end;end.学生查询成绩窗口代码: unit Unit2;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, DB, ADODB, Grids, DBGrids, Buttons, jpeg, ExtCtrls;type TForm2 = class(TForm) SpeedButton1: TSpeedButton; StaticText1: TStaticText; StaticT

30、ext2: TStaticText; DBGrid1: TDBGrid; ADOConnection1: TADOConnection; ADOQuery1: TADOQuery; DataSource1: TDataSource; Edit1: TEdit; Image1: TImage; procedure SpeedButton1Click(Sender: TObject); private Private declarations public Public declarations end;var Form2: TForm2;implementation$R *.dfmprocedu

31、re TForm2.SpeedButton1Click(Sender: TObject);varsqlstr:string;beginSqlStr:=select cname,grade from course where sno=+edit1.Text+; adoquery1.Close; /关闭ADOQuery1,以便于进行SQL语句更新 adoquery1.SQL.Clear; /清空SQL语句 adoquery1.SQL.Add(sqlStr); adoquery1.Open; /新SQL有效end;end.教师查询录入窗口代码: unit Unit3;interfaceuses Wi

32、ndows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, DB, ADODB, StdCtrls, Grids, DBGrids, ExtCtrls, DBCtrls, Buttons, jpeg;type TForm3 = class(TForm) SpeedButton1: TSpeedButton; StaticText1: TStaticText; StaticText2: TStaticText; DataSource1: TDataSource; DBNavigator1: T

33、DBNavigator; DBGrid1: TDBGrid; Edit1: TEdit; ADOConnection1: TADOConnection; ADOQuery1: TADOQuery; Image1: TImage; procedure SpeedButton1Click(Sender: TObject); private Private declarations public Public declarations end;var Form3: TForm3;implementation$R *.dfmprocedure TForm3.SpeedButton1Click(Send

34、er: TObject);varsqlstr:string;beginSqlStr:=select sno,grade from course where cname=+edit1.Text+; adoquery1.Close; /关闭ADOQuery1,以便于进行SQL语句更新 adoquery1.SQL.Clear; /清空SQL语句 adoquery1.SQL.Add(sqlStr); adoquery1.Open; /新SQL有效end;end. 管理员更改课程信息窗口代码: unit Unit4;interfaceuses Windows, Messages, SysUtils, V

35、ariants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Grids, DBGrids, ExtCtrls, DBCtrls, Buttons, DB, ADODB, jpeg;type TForm4 = class(TForm) DataSource1: TDataSource; ADOConnection1: TADOConnection; ADOQuery1: TADOQuery; SpeedButton1: TSpeedButton; StaticText1: TStaticText; DBNavigator1: T

36、DBNavigator; DBGrid1: TDBGrid; StaticText2: TStaticText; Edit1: TEdit; Image1: TImage; procedure SpeedButton1Click(Sender: TObject); private Private declarations public Public declarations end;var Form4: TForm4;implementation$R *.dfmprocedure TForm4.SpeedButton1Click(Sender: TObject);varsqlstr:strin

37、g;beginSqlStr:=select * from kcxx where cname=+edit1.Text+; adoquery1.Close; /关闭ADOQuery1,以便于进行SQL语句更新 adoquery1.SQL.Clear; /清空SQL语句 adoquery1.SQL.Add(sqlStr); adoquery1.Open; /新SQL有效end;end. 4.系统运行环境硬件环境CPU 酷睿双核I3处理器内存 2GB硬盘 320GB软件环境数据库 SQL server 2000DELPHI版本 DELPHI7.0操作系统 WindowsXP5.输入输出设计输入:用户名

38、,密码输出:三个用户各自的界面输入:学生自己的学号输出:学生的课程及其对应的成绩输入:课程名输出:各学生的学号及该课程分数输入:课程名输出:各课程的课程号及课程名第三章 系统实施1系统分工 此套成绩管理系统中,SQL server 2000 主要是存储系统所需要的所有数据,包括学生用户,教师用户,管理员用户的用户名及密码,所有课程的信息,所有学生的信息以及所有学生所有课程的成绩表。DELPHI7.0主要是创建人机界面,包括学生用户,教师用户,管理员用户的登录界面,学生用户的成绩查询界面,密码修改界面;教师用户的成绩录入,修改界面,密码修改界面;管理员用户的课程信息修改界面。最后通过由DELPHI7.0调用SQL server2000 调用数据库实现系统功能。 此套系统中,系统按用户类型的不同展开分工。其中学生用户具有查询成绩,修改个人密码的功能。教师用户具有录入,修改成绩,修改个人密码的功能。管理员用户具有增加,修改课程信息的功能2模块功能与处理过程设计 模块1,登录模块: 输入

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 研究报告 > 商业贸易


经营许可证编号:宁ICP备18001539号-1