数据库程序设计报告.docx
- 文档编号:14581668
- 上传时间:2023-06-24
- 格式:DOCX
- 页数:21
- 大小:66.59KB
数据库程序设计报告.docx
《数据库程序设计报告.docx》由会员分享,可在线阅读,更多相关《数据库程序设计报告.docx(21页珍藏版)》请在冰点文库上搜索。
数据库程序设计报告
枣庄学院
信息科学与工程学院课程设计任务书
题目
学牛管理系统
学号
姓名
专业计算机科学与技术
课程delphi
指导教师职称
完成时间:
年月——年月
信息科学与工程学院
摘要
随着学校学生的增加,原来的采用人工记录的方式已经不能满足学生管理的需要。
这是用为人工的管理模式存在着很大的缺陷,如维护性差,出错后不容易修改;不方便查询学生的情况,工作效率低;学生选课是麻烦,费时费力等。
随着信息技术的发展,有必要对原来的教务管理模式进行改进,是指便于学生信息的查询和维护,便于学生选课。
由此提出建立一个教务管理信息系统,建立数据库存储学生信息和所有的课程信息,通过客户端程序访问数据库,实现教务信息的管理。
本系统采用客户机/服务器结构。
数据库服务器采用SqlServer2000数据库系统,将学生基本信息的管理、课程的设置情况、学生选课结果和课程成绩等数据存储到数据库中,客户机程序采用Delphi7.0作为开发平台,实现对数据库中信息的访问。
关键词:
Delphi,数据库,学生管理系统
Abstract
Alongwithschoolstudent'sincrease,theusemanualrecord'swayoriginallyalreadycouldnotmeettheneedswhichthestudentmanages.Thisiswithhastheverybigflawforthemanualmanagementpattern,ifthemaintenancedifference,aftermakingamistake,isnoteasytorevise;Itisnotconvenientinquiresstudent'ssituation,theworkingefficiencyislow;Thestudentelects,butistroublesome,takesthetroubletime-consumingandsoon.Alongwithinformationtechnologydevelopment,itisnecessarytomaketheimprovementtotheoriginaleducationaladministrationmanagementpattern,isreferstoisadvantageousforthestudentinformationtheinquiryandthemaintenance,isadvantageousforthestudenttochoosetheclass.
Fromthisproposedthatestablishesaneducationaladministrationmanagementinformationsystem,establishesthedatabasetosavethestudentinformationandallcurriculuminformation,throughtheclientsideprocedurevisitdatabase,realizestheeducationaladministrationinformationmanagement.
Thesystemusesclient/serverarchitecture.SqlServer2000databaseserversusingthedatabasesystem,thecourseswillbesetup,theresultsofstudentsclassesandcourses,suchasperformancedatastoragetothedatabase,theclientproceduresadoptedDelphiasadevelopmentplatform,andtheaccesstotheinformationinthedatabase.
Keywords:
SQLsever2000;PremisesInformationManagement;Database
第一章概述1
第二章学生管理的需求分析2..
2.1系统运行环境2..
2.2系统功能需求3..
2.3系统性能需求3..
2.4系统技术需求4..
第三章学生信息管理设计6..
3.1系统功能模块设计6..
3.2系统数据库设计8..
3.3系统安全保密设计9..
3.4数据库结构的实现9..
3.5初始数据的输入1..0
第四章学生管理系统的测试与维护1..1
4.1系统测试1..1.
4.2系统维护1..1.
总结1..3..
参考文献1..4.
第一章概述
学生管理系统减少老师和教务处工作人员的工作量,同时也方便了同学对选课、成绩的查询、各种通知的浏览。
本学生管理系统主要包括学生基本信息的管理、课程设置、教学安排、学生选课、课程管理、成绩查询等功能。
本系统采用客户机/服务器结构。
数据库服务器采用SqlServer2000数据库系统,将学生的基本情况、课程的设置情况、学生选课情况和课程成绩等数据存储到数据库中,客户机程序采用Delphi作为开发平台,实现对数据库中信息的访问。
在数据库访问方面,利用SqlServer2000数据库组件管理应用程序与数据库之间的通信联系;在数据记录查询方面,采用TQuery组件查询和TTable组件查询相结合的方法,进行了多个数据表的组合查询和数据结果统计。
本教务管理系统可以说是一个综合性的学校学生管理系统,这它集成了教师课程管理子系统、学生课程管理子系统、教务课程调度子系统等多种功能,因而具有较强的简便、使用、易于维护。
第二章学生管理的需求分析
2.1系统运行环境
为了保证系统运行的效率和可靠性,系统服务器端应具有较高的软硬件配置,客户端的要求不是很高。
此应用程序可广泛运行于国际互联网即Internet,
也可适用于内部的局域网。
其运行要求如下:
I、软件环境
客户端:
操作系统:
Windows2000/XP
网络协议:
TCP/IP
浏览器:
InternetExplorer5.0
数据库:
MicrosoftSqlServer2000
服务器端:
操作系统:
Windows2000/XP
网络协议:
TCP/IP
WEB服务器:
InternetInformation5.0数据库:
MicrosoftSqlServer2000
II、硬件环境:
服务器CPU:
PIII500以上,内存:
256M
客户机CPU:
P200MMX以上,内存:
32M以上
2.2系统功能需求
学生管理系统主要提供网上的教务信息管理平台。
通过前端(客户端)浏览器和后台数据库向用教师、学生展示信息,方便的实现了学生信息的维护和更新,使管理员更快,更好的了解信息。
以“教师管理子系统”模块为例,管理员将所有教师课程信息数据存入数据库相应的表中,当客户端发出浏览该动态页面的请求时,服务器就会执行相应的脚本代码,从数据库中查询出符合条件的信息,生成相关页面发送到客户端浏览器上。
客户端所显示的内容是随着后台管理数据库的变化而动态显示的,因此,客户端可以获得学生信息最新动态信息。
2.3系统性能需求
通过调查,要求系统需要有以下功能:
1.通用性:
可以增加学院、系、专业、班级、学生;可以增加学期、课程。
2.易用性:
成绩的录入、修改要方便。
普通课程以班级、课程、学期为录入条件。
选修和重修要特殊考虑。
3.学籍管理:
奖惩、退学、转专业。
4.学生、课程基本信息管理:
学号、姓名、所在班级、性别、课程号、名称、学期、学分、课程性质。
5.权限控制:
有些用户可以录入修改,有些用户只能查询。
6.成绩排名:
既可以按专业也可以按班级;既可以是某个学期也可以是所有学期。
2.4系统技术需求
2.4.1技术可行性分析
由于本系统管理的对象单一,都是在校学生,且每个数据内容具有较强的关联性,涉及的计算过程不是很复杂。
因此,比较适合于采用数据库管理。
且学校用于学生管理的微机都是PIII以上的机器,在存储量、速度方面都能满足数据库运行的要求。
在技术难度方面,由于有指导老师的指导和相关参考文献,特别是网上资料,特别是参考其它程序的功能,因此完全可以实现。
2.4.2Delphi语言
Delphi是Inprise公司(即原Borland)推出的基于真正面向对象语言ObjectPascal语言的可视化编程工具,是当今世界上最快的编译器。
能大大提高编程效率。
面向对象的程序设计(Object-OrientedProgramming,简写为OOP是
现在最成功的高级语言程序设计方法,面向对象的程序设计的目的是创建可重用代码,通过把属性和方法封装进“对象”中,以更好地模拟现实世界“真正的
程序员用c,聪明的程序员用Delphi”,这句话是对Delphi最经典、最实在的描述。
Delphi6是“第四代编程语言”的杰出代表,它是一个完全导向的、高度可视化的集成开发环境IDE(IntegratedDevelopmentEnvironment),非常人性化。
具有简单、高效、功能强大的特点。
和VC相比,Delphi更简单、更易于
掌握,而在功能上却丝毫不逊色;和VB相比,Delphi则功能更强大、更实用。
它一直是程序员至爱的编程工具。
2.4.3数据库技术
SQL全称是“结构化查询语言(StructuredQueryLanguage)”,最早是IBM的圣约瑟研究实验室为其关系数据库管理系统SYSTEM开发的一种查询语言,
它的前身是SQUARE!
言。
SQL语言结构简洁,功能强大,简单易学,所以自从IBM公司1981年推出以来,SQL语言得到了广泛的应用。
目前,SQL语言已被确定为关系数据库系统的国际标准,被绝大多数商品化关系数据库系统采用,如Oracle、Sybase、DB2、Informix、SQLServer这些数据库管理系统都支持SQL语言作为查询语言。
结构化查询语言SQL是一种介于关系代数与关系演算之间的语言,其功能包括查询、操纵、定义和控制四个方面,是一个通用的功能极强的关系数据库标准语言。
在SQL语言中不需要告诉SQL如何访问数据库,只要告诉SQL需要数据库做什么。
第三章学生信息管理设计
3.1系统功能模块设计
根据系统所要实现的功能要求,按用户身份的不同,本系统分为4个部分:
数据录入、查询、用户管理。
数据录入部分是提供给老师及教务人员用来进行课程的设置和管理的,查询部分是学生可以对自己的基本信息、成绩查询,用户管理部分事教务人员对用户管理部分。
具体各功能块完成的任务如下:
数据录入模块
此模块是教务人员及院系管理员系部、专业、班级的录入,学生基本信息的
录入、课程资源的录入、成绩的录入等。
查询模块
系统管理员、院系管理员、学生都可以通过此模块来进行成绩的查询用户管理模块
管理员可以通过这个页面对各级用户的基本信息、登录密码等进行修改。
课程信息维护页面
课程信息维护模块位于查询菜单下的课程信息查询菜单下、主要用于对课程
的管理,包括该课程的课程编号、课程名称、课程简称、拼音码、教师、开课系别、学分、是否是本学期课程等等相关信息的查询。
学生信息维护模块
该功能模块是提供给学生进行选课,包括学生信息、已选课程和课程信息3部分。
学生信息包括学号、姓名、班级等基本信息。
一选课程包括学号、课序号、课程名称、教师、开课系别、上课时间天数、上课时间节数、上课地点等。
课程信息包括课序号、课程编号、课程名称、教师、开课系别、拼音码、上课时间天数、上课时间节数和上课地点等。
成绩录入模块
该选课的所有学生名单,教师对各个学生的成绩输入,并保存,最终提交之前还可以进行修改。
最终提交是指老师提交该门课所有学生的最终成绩,提交后的成绩不可以进行修改,课程拼音和名称是模糊查询,课程编号必须输入准确,实际中由教师登录时的名称查询得到。
退出该系统主要用于退出当前窗体。
3.2系统数据库设计
本系统需要设计3个基本信息表:
教师个人信息、学生个人信息、课程信息。
学生的选课信息需要用一个表来单独保存。
由于每学期都要选课,因此选课结束
后要将这个表的内容及时保存到成绩单数据表中。
使用本系统的不光是教务处的管理人员和教师,每个学生都需要登录到选课系统进行课程的选择。
因此,需要
对不同的登录人员进行密码认证和权限的限制,防止出现越权行为。
用户名、密码、和权限单独保存在1个数据表中。
另外需要一个表格保存各记录号的计数值和一个课程状态的代码表。
1.用户信息表
该表用于记录用户的密码和权限,包括用户名、密码、权限。
其结构如下表所示。
字段名
数据类型
说明
是否为主键
是否为空
ID
CHAR(6)
用户名
是
NOTNULL
PASSWD
VARCHAR(15)
密码
否
NOTNULL
AUTHORITY
CHAR
(1)
权限
否
NOTNULL
2.成绩信息表
该表用于记录学生的课程成绩,包括记录号、学生的学号、
课程、成绩。
其结构如下表所示
字段名
数据类型
说明
是否为主键
是否为空
ID
INTEGER
记录号
是
NOTNULL
STUDENT
CHAR(6)
学号
否
NOTNULL
COURSE
CHAR(10)
课程号
否
NOTNULL
SCORE
FLOAT
成绩
否
NULL
NAME
CHAR(10)
姓名
否
NOTNULL
3.教师个人信息表
该表用于记录教师的个人信息,包括员工号、姓名、所属院系。
其结构如
F表所示。
字段名
数据类型
说明
是否为主键
是否为空
ID
CHAR(6)
身份证号
是
NOTNULL
NAME
VARCHAR(10)
姓名
否
NOTNULL
DEPARTMEN
「CHAR
(2)
院系
否
NOTNULL
4.学生个人信息表
该表用于记录学生的个人信息,包括学号、姓名、班级。
其结构如下表所示
字段名
数据类型
说明
是否为主键
是否为空
ID
CHAR(6)
学号
是
NOTNULL
NAME
VARCHAR(10)
姓名
否
NOTNULL
CLASS
CHAR
(2)
班级
否
NOTNULL
5.课程信息表
该表用于记录课程的信息,包括课程号、授课老师、学分、学时、上课时间、
上课地点、课程简介、课程状态。
其结构如下表所示
字段名
数据类型
说明
是否为主键
是否为空
ID
CHAR(10)
课程号
是
NOTNULL
NAME
VARCHAR(50)
课程名称
否
NOTNULL
TEACHER
CHAR(6)
任课老师
否
NOTNULL
CREDIT-HOUR
SMALLINT
学分
否
NULL
PERIOD
SMALLINT
学时
否
NULL
CLASSTIME
VARCHAR(20)
上课时间
否
NULL
CLASSROOM
VARCHAR(20)
上课地点
否
NULL
INTRO
VARCHAR(40)
课程简介
否
NULL
STATE
CHAR(6)
课程状态
否
NOTNULL
6.选课结果信息表
该表用于记录选课结果信息,包括记录号、课程号、和选课学生。
其结构如
F表所示。
字段名
数据类型
说明
是否为主键
是否为空
ID
INTEGER
记录号
是
NOTNULL
COURSE
CHAR(10)
课程号
否
NOTNULL
STUDENT
CHAR(6)
选课学生
否
NULL
3.3系统安全保密设计
在系统安全保密设计中,本系统采用的是对用户登录系统时进行身份验证,只允许合法用户进入系统并操作。
在登录本系统时,系统首先让用户选择相应的身份,不同的身份有着不同的权限,同时用户需要输入用户名和密码进行验证。
输入的信息正确后才能进入相应的页面。
在登录模块的设计中,分别在在客户端和服务器端进行数据验证。
3.4数据库结构的实现
本系统采用SqlServer2000数据库,数据库各个表的结构可以在SqlServer2000中用CREATETABLE句来创建。
3.5初始数据的输入
数据表创建成功后,数据库中还没有实际的数据。
为保证外部键能使用,些代码数据需提前输入。
第四章学生管理系统的测试与维护
4.1系统测试
在系统的程序编码中,测试是很重要的方面,测试的过程也是编码的更加深入的过程。
在此过程中,团结合作也很重要,可以提高测试的效率。
系统测试是可以实现计划并可明确检验的一种系统性处理过程。
事先可以规定测试技术和工序,指定一系列的测试步骤。
软件测试是软件质量保证的关键,也是对需求、设计和编码的最终编码。
为了发现软件存留的错误,软件的测试内容以及与需求分析、设计和编码这3个阶段的错误相呼应。
在教务管理系统中软件测试是随时都在进行的,每当一个模块完成时都分别进行测试。
由于本系统并没有投入到实际应用,数据库中的内容是不完全的。
所以在测试上要注意这些。
并且每个功能都进行数据测试,如学生信息搜索,课程查询等。
系统完成后进行系统集成测试,在连接到首页和数据库后台集成后,检查是否在模块集成上出现问题。
最后在系统完成后进行验收测试,即按照任务书和需求分析逐步验证所要求的功能是否能够实现。
在整个系统的生成过程中,也遇到了问题:
利用了函数的返回值进行判断后检查差错。
例如在祖先窗口的查询窗口中,输入了要查询学生的ID号,在单击
主窗口的查询事件以后,在查询条件的传递时,在查询窗口的字段名出现了空格,而不是预想的字段名称。
这样根据函数的返回值判断,说明取字段没有成功,于是将错误集中在窗口取值的程序段。
结果发现查询窗口在取用户输入的查询条件时没有出现赋值错误,问题出在查询窗口没有读取其子窗口的用户单击确认健事件,于是主窗口不知道何时读入用户输入的查询信息。
“_L工L11.口"”J
•用户乂陆■退出系统
■■■
procedureTForm2.SpeedButton1Click(Sender:
TObject);
var
results:
variant;
str1:
variant;
begin
ADOTable1.Close;
ADOTable1.Open;
ADOTable1.Active;
str1:
=adotable1Lookup('用户类型',combobox1.Text,'用户名');
ifstr1=edit1.Textthenbegin
results:
=ADOTable1.Lookup('用户名',edit1.text,'密码');{检索数据库中对应用户名的密码项}
ifedit1.Text=”then
application.MessageBox('用户名不能为空!
','提示:
mb_ok)
elseifedit2.Text=”then
即plication.messagebox('密码不能为空!
','警告:
mb_ok)
else
ifresults=edit2.Textthen
begin
application.CreateForm(Tform10,form10);
formlO.ShowModal;
end
else
showmessage('密码错误或用户不存在!
');
edit1.Visible:
=true;
edit2.Visible:
=true;
edit1.Text:
='';
edit2.Text:
='';
end
elseifstr1<>edit1.Textthenbeginshowmessage('用户不存在!
');
end;
end;
procedureTForm7.DBGrid1CellClick(Column:
TColumn);
begin
ifdbcombobox1.Text='A'then
image1.Picture.LoadFromFile(extractfilepath(paramstr(0))+'./picture/A.ico');
ifdbcombobox1.Text='B'thenimage1.Picture.LoadFromFile(extractfilepath(paramstr(0))+'./picture/B.ico');
ifdbcombobox1.Text='C'thenimage1.Picture.LoadFromFile(extractfilepath(paramstr(0))+'./picture/C.ico');
ifdbcombobox1.Text='D'thenimage1.Picture.LoadFromFile(extractfilepath(paramstr(0))+'./picture/D.ico');
ifdbcombobox1.Text='E'thenimage1.Picture.LoadFromFile(extractfilepath(paramstr(0))+'./picture/E.ico');
ifdbcombobox1.Text='F'thenimage1.Picture.LoadFromFile(extractfilepath(paramstr(0))+'./picture/F.ico');
ifdbcombobox1.Text='G'thenimage1.Picture.LoadFromFile(extractfilepath(paramstr(0))+'./picture/G.ico');
ifdbcombobox1.Text='H'thenimage1.Picture.LoadFromFile(extractfilepath(paramstr(0))+'./picture/H.ico');
ifdbcombobox1.Text='I'thenimage1.Picture.LoadFromFile(extractfilepath(paramstr(0))+'./picture/I.ic
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 程序设计 报告
![提示](https://static.bingdoc.com/images/bang_tan.gif)