Delphi课设—学生信息管理系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Chang’an University
Delphi高级编程双语课程
设计报告
题目:学生信息管理系统
专业:电子信息工程
班级:
学号:26
姓名:李健
指导教师:李珊珊张晓博
日期:
一、课程设计目的:
a)要求学生熟练掌握Delphi高级编程语言的基本知识和基本的
编程技能;
b)掌握结构化和面向对象程序设计的基本思路和方法;
c)能够熟练应用常用的Delphi的组件,实现应用程序的编写、
编译和发行。
d)掌握大型应用开发的步骤;
二、课程设计题目(问题)描述和要求:
题目:学生信息管理系统
本系统的主要功能是收集学生的个人信息,以便向教师提供每个学生在校的情况。系统的功能有:
➢学生个人信息输入,包括:学号、姓名、性别、出生年月、籍贯、生源所在地等;
➢学生流动情况的输入,包括:转系、休学、复学、退学、毕业;
➢学生奖惩情况的输入;
➢学生个人信息的查询和修改,包括流动情况和奖罚情况。
✧基本要求:
1)画出系统功能模块图;
2)画出系统数据流程图;
3)进行数据库设计,写出所设计的数据库表的结构;
4)系统有友好的交互界面;
5)记录信息的录入、插入、删除、修改、查询或排序;
6)特定记录信息的输出显示(打印报表等)。
7)注意程序的实用性、安全性;
8)随时记录设计情况(备查,也为编写设计说明书作好准备);
9)设计成果:设计说明书一份(附录:设计说明书格式及要求);
源程序(能编译、正常运行)及其它相关文档。
三、系统分析与设计:
1、系统需求分析:
→数据分析:
学生信息管理系统中需要以下数据:
、学生的基本信息,包括:学号、姓名、性别、出生年月、籍贯、生源所在地、学生所受的奖惩情况。
、学生的流动信息,包括:学号、姓名、转系情况、休学情况、复学情况、退学情况、毕业情况。
●、管理员的账号、密码信息。
❍、用户的登录信息:用户名、密码。
→功能分析:
学生信息管理系统需要完成以下功能:
、学生基本信息的显示、查询、添加、删除和修改。
、学生流动信息的显示、查询、添加、删除和修改。
●、用户登录密码的修改。
❍、管理员用的创建、删除和管理员密码的修改。
⏹、学生登录后只能浏览、查询学生信息,和修改自己的密码,
而学生信息的修改、删除和添加,需要管理员的账户和密
码。
☐、学生信息的报表生成。
2、系统设计:
总体框图:
附加说明:数据管理模块只有拥有管理号和密码的管理员才能进入,
并对学生数据进行添加、删除和修改等基本管理。在每个管理中有细分了对学生基本信息的管理和对学生流动信息的管理。另外在数据管理模块中还有创建新的管理员和删除已有管理员的功能项,但这些都是在可以进入数据管理界面的前提下进行的。
3、数据库设计:
数据库的E-R图,关联图和数据库表的结构:
学生基本信息表:
字段名称数据类型字段大小字段说明学号Char 10 不允许为空姓名Char 10 不允许为空性别Char 10 不允许为空出生年月Datatime 10 允许为空籍贯Char 20 允许为空生源所在地Char 20 允许为空奖惩情况Char 30 允许为空
字段名称数据类型字段大小字段说明学号Char 10 不允许为空姓名Char 10 不允许为空转系情况Char 30 允许为空休学情况Char 30 允许为空复学情况Char 30 允许为空退学情况Char 30 允许为空毕业情况Char 30 允许为空
字段名称数据类型字段大小字段说明
学号Char 10 不允许为空
密码Char 10 允许为空
姓名Char 10 允许为空
字段名称数据类型字段大小字段说明TeacherId Char 10 不允许为空Passwd Char 10 允许为空Name Char 10 允许为空
学生基本信息表:
学生流动信息表:
登录信息表:
管理员信息表:
系统主要代码分析:
“登录”代码:
procedure TForm1.Button1Click(Sender: TObject);
begin
query1.Close;
;
* from users where 学号='+''''+edit1.Text+''''+'and '+'密码='+''''+edit2.Text+'''' ); //利用SQL语言从已建好的登录信息表—users中查询输入的用户名和密码是否已存在
query1.Open;
if query1.Eof then
begin
showmessage('用户号或密码不正确'); //若在users表中找不到输入的用户名和密码则提示!
end
else
begin
form1.Close;
form2.showmodal; //若在users表中找到输入的用户名和密码则关闭当前页面转向主页面
end;
end;
“查询”代码:
procedure TForm7.Button1Click(Sender: TObject);
begin
with form7.table1 do
begin
close;
indexfieldnames:=s;//定义字段名:学号或是姓名
open;
if findkey([edit1.text]) then //利用Findkey()在查找在表中是否存在输入的信息
begin
label2.Caption:='查找成功!';//若有则显示“查找成功!”并在下面的DBGrid中显示出来.
end
else
begin
ShowMessage('查找失败!');
label2.Caption:=''; //若没有则提示“查找失败!”
end;
end;
“添加”代码:
procedure TForm9.Button1Click(Sender: TObject);
begin
if Length(Edit1.Text)=0 then
showmessage('请输入学号!')
else