学生信息管理系统设计与开发.docx

上传人:b****1 文档编号:13754553 上传时间:2023-06-17 格式:DOCX 页数:26 大小:1.23MB
下载 相关 举报
学生信息管理系统设计与开发.docx_第1页
第1页 / 共26页
学生信息管理系统设计与开发.docx_第2页
第2页 / 共26页
学生信息管理系统设计与开发.docx_第3页
第3页 / 共26页
学生信息管理系统设计与开发.docx_第4页
第4页 / 共26页
学生信息管理系统设计与开发.docx_第5页
第5页 / 共26页
学生信息管理系统设计与开发.docx_第6页
第6页 / 共26页
学生信息管理系统设计与开发.docx_第7页
第7页 / 共26页
学生信息管理系统设计与开发.docx_第8页
第8页 / 共26页
学生信息管理系统设计与开发.docx_第9页
第9页 / 共26页
学生信息管理系统设计与开发.docx_第10页
第10页 / 共26页
学生信息管理系统设计与开发.docx_第11页
第11页 / 共26页
学生信息管理系统设计与开发.docx_第12页
第12页 / 共26页
学生信息管理系统设计与开发.docx_第13页
第13页 / 共26页
学生信息管理系统设计与开发.docx_第14页
第14页 / 共26页
学生信息管理系统设计与开发.docx_第15页
第15页 / 共26页
学生信息管理系统设计与开发.docx_第16页
第16页 / 共26页
学生信息管理系统设计与开发.docx_第17页
第17页 / 共26页
学生信息管理系统设计与开发.docx_第18页
第18页 / 共26页
学生信息管理系统设计与开发.docx_第19页
第19页 / 共26页
学生信息管理系统设计与开发.docx_第20页
第20页 / 共26页
亲,该文档总共26页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

学生信息管理系统设计与开发.docx

《学生信息管理系统设计与开发.docx》由会员分享,可在线阅读,更多相关《学生信息管理系统设计与开发.docx(26页珍藏版)》请在冰点文库上搜索。

学生信息管理系统设计与开发.docx

学生信息管理系统设计与开发

河南工程学院

《数据库原理及应用》课程设计

成果报告

 

学生信息管理系统设计与开发

 

学生学号:

学生姓名:

学院:

计算机学院

专业班级:

专业课程:

数据库原理及应用课程设计

指导教师:

 

年月日

课程设计指导教师评分表

课程设计题目

学生信息管理系统设计与开发

成员

姓名

学号

任务分工

2

VB系统窗体设计及数据库设计

数据库代码片段筛选及整理

数据库及系统整体修改调试

评分项目及分值要素

成绩评定

项目

最高分

评分要素

成绩

1.学习态度

20

上机出勤及端正的学习态度、认真刻苦程度,工作量饱满程度等

2.软件设计质量

40

采用的算法、设计方案,设计结果,界面友好等方面进行综合评定

3.答辩过程

20

能简明扼要地阐述设计的主要内容,能准确流利地回答各种问题

4.设计报告书写

10

内容按要求步骤书写,条理清晰,表述清楚、措词得当

5.实际动手能力

10

熟练使用开发工具,能够迅速准确的进行调试、纠错与运行;组长全面负责,承担复杂的模块设计分值就高

总成绩

等级

评语

1、数据需求分析………………………………………………………………………、3

、2、概念结构设计(ER图)………………………………………………………………、4

3、逻辑结构设计(规范化)…………………………………………………………………5

4、物理结构设计(索引)……………………………………………………………………6

 

学生信息管理系统设计与开发

一、设计目的

设计目的:

建立高效利用的学生信息管理系统,实现大量信息的规范管理、科学统计与快速查询,从而更好的减少管理方面的工作量。

学生信息管理系统提供了强大的学生信息管理功能,方便管理员对学生信息进行添加、修改、删除、查询、统计等操作。

因此,学生信息管理系统能够满足学校的需要,简化学生信息的管理过程,提高管理效率,就是学校学生信息管理的一种重要的工具。

二、系统实现思路

1、需求分析

本次的实训课程着手于学生信息管理系统,原因在于学校的规模不断扩大,学生数量也在急剧增加,有关学生的各种信息量也在成倍增长。

对于庞大的信息量,一个高效的信息管理系统就是能够很大程度上提高学生管理工作的效率。

2、总体设计

系统功能分析:

系统开发的目的就是实现学生信息管理系统的关系化、规范化与自动化。

学生信息管理系统主要提供对学生信息的管理、班级信息的管理、课程信息的管理以及学生成绩的管理。

 

主要功能有:

(1)有关学生信息的输入、修改与查询。

(2)班级信息的输入、修改与查询。

(3)基本课程的输入、修改与查询。

(4)成绩的输入、修改与查询。

(5)学生成绩信息的统计。

(6)模拟用户登录操作。

 

系统功能模块设计:

 

图1系统功能模块

三、系统数据库设计

1、数据需求分析

用户的需求具体体现在各种信息的提供、保存、更新与查询方面,这就要求数据库结构能充分满足各种信息的输出与输入。

收集基本的数据、数据结构以及数据处理的流程,组成一份相近的数据字典,为后面的具体设计打下良好的基础。

2、概念结构设计(ER图)

 

图2学生实体E-R图

 

图3班级实体E-R图

 

图4课程实体E-R图

 

 

图5实体与实体之间E-R图

 

3、逻辑结构设计(规范化)

学生管理系统数据库中各个表格的设计如下所示:

 

表1学生基本信息

字段名

数据类型

大小

就是否为空

说明

student_no学号

int

4

主键

student_name姓名

char

10

student_sex性别

char

2

Born_date出生日期

Datatime

8

class_no班级号

int

Tele_number联系方式

char

10

外关键字

ru_date入学日期

Datatime

address地址

Varchar

50

comment备注

Varcher

200

 表2班级基本信息

字段名

数据类型

大小

就是否可空

说明

class_no班级编号

Int

10

主关键字

class_name班级名

Char

20

profession专业

Char

14

director班主任

charr

10

外关键字

 

字段名

数据类型

大小

就是否可空

说明

course_no课程号

Int

关键字

course_name课程名

Char

10

course_score学分

Int

4

course_time学时

int

4

course_type课程类型

char

10

course_start开课时间

char

1

表3课程基本信息

 

表4成绩基本信息

字段名

数据类型

大小

就是否可空

说明

exam_no成绩号

Char

10

主关键字

Student_no学号

Int

4

外关键字

course_no课程号

Char

10

外关键字

result成绩

Int

4

就是

 

4、物理结构设计(索引)

班级设置

班级信息录入

班级信息管理

学生信息录入

班级设置

学生信息管理

成绩信息录入

成绩信息管理

班级设置

学生信息录入

课程管理

登录

 

图6学生信息管理系统数据流程图

 

学生基本信息:

包括学生学号、姓名、性别、出生日期、联系电话、家庭住址等。

班级基本信息:

包括班级号、班级名、班主任等。

课程基本信息:

包括课程编号、课程名称、课程类型、学分等。

学生成绩信息:

包括学生学号、课程编号与考试成绩等。

 

四、详细系统设计

针对此次学生信息管理系统,分为了学生信息管理,班级信息管理,课程信息管理与成绩信息管理界面,分多种功能操作,由于时间原因,简单针对学生信息管理进行了比较详细的功能操作测试,先就是通过菜单编辑器实现了多功能布局操作,选取了学生信息进行了窗口功能操作。

例如:

点击添加学生信息,可以实现添加学生信息功能,并且单独设置了模拟用户登录界面,实现了用户隐私安全性保护数据。

图7窗口目录的创建

图8班级信息管理创建

图9学生信息管理创建

 

 

 

图10课程信息创建

图11成绩信息管理创建

图12工程主窗体的创建

用户登录:

DimaAsString

DimbAsString

DimstrAsString

DimstrrAsString

str=InStr(Text2、Text,"'")

Ifstr<>0Then

MsgBox"不能输入非法字符!

",vbCritical+vbOKOnly,"错误"

ExitSub

Else

strr=InStr(Text1、Text,"'")

Ifstrr<>0Then

MsgBox"不能输入非法字符!

",vbCritical+vbOKOnly,"错误"

ExitSub

EndIf

EndIf

a=Trim(Text1)

b=Trim(Text2)

Ifa=""Then

MsgBox"用户名不能为空!

",vbCritical,"错误"

Text1、SetFocus

Text1、SelStart=0

Text1、SelLength=Len(Text1)

Else

DimrAsNewADODB、Recordset

Setr=DataEnvironment1、rsuser

DimcAsString

StaticnTryCountAsInteger

c="select*from用户登陆where用户名='"&a&"'"

Ifr、State=adStateOpenThenr、Close

r、Openc

Ifr、EOFThen

MsgBox"无此用户!

请重新登陆!

!

",vbCritical,"错误"

Text1、SetFocus

Text1、SelStart=0

Text1、SelLength=Len(Text1)

nTryCount=nTryCount+1

IfnTryCount>=5Then

MsgBox"您无权操作本系统!

",vbCritical,"错误"

UnloadMe

EndIf

Else

Ifb=Trim(r、Fields

(1))Then

quanxian=Trim(r、Fields

(2))

MDIForm1、Show

UnloadMeElse

MsgBox"密码错误!

请重新登陆!

!

",vbCritical,"错误"

Text2、SetFocus

Text2、SelStart=0

Text2、SelLength=Len(Text2)

nTryCount=nTryCount+1

IfnTryCount>=5Then

MsgBox"您无权操作本系统!

",vbCritical,"错误"

UnloadMe

EndIfEndIf

EndIfEndIf

图13系统启动窗体

图14用户登录窗体

五、系统调试运行

数据库的创建与调试:

1、创建学生信息表

CREATETABLE[dbo]、[student_Info](

[student_ID][int]NOTNULL,

[student_Name][char](10)COLLATEChinese_PRC_CI_ASNULL,

[student_Sex][char]

(2)COLLATEChinese_PRC_CI_ASNULL,

[born_Date][datetime]NULL,

[class_NO][int]NULL,

[tale_Number][char](10)COLLATEChinese_PRC_CI_ASNULL,

[ru_Date][datetime]NULL,

[address][varchar](50)COLLATEChinese_PRC_CI_ASNULL,

[comment][varchar](200)COLLATEChinese_PRC_CI_ASNULL

)ON[PRIMARY]

GO

2、创建班级信息表

CREATETABLE[dbo]、[class_info](

[class_No][int]NOTNULL,

[class_Name][char](20)COLLATEChinese_PRC_CI_ASNOTNULL,

[director][char](10)COLLATEChinese_PRC_CI_ASNULL,

[profession][char](14)COLLATEChinese_PRC_CI_ASNULL

)ON[PRIMARY]

GO

3、创建课程信息表

CREATETABLE[dbo]、[class_info](

[course_No][int]NOTNULL,

[course_Name][char](10)COLLATEChinese_PRC_CI_ASNOTNULL,

[course_Type][char](10)COLLATEChinese_PRC_CI_ASNULL,

[course_start][char]

(1)COLLATEChinese_PRC_CI_ASNULL,

[course_time][int]NULL,

[course_score][int]NULL

)ON[PRIMARY]

GO

4、创建成绩信息表

CREATETABLE[dbo]、[class_info](

[student_Id][int]NOTNULL,

[course_No][char](10)COLLATEChinese_PRC_CI_ASNOTNULL,

[result][float]NULL

)ON[PRIMARY]

GO

学生信息管理系统主窗体的创建与调试:

 

图15基础工程窗体概览

 

 

图16工程窗体的代码展示

添加学生信息:

 

图17添加学生信息窗体

PrivateSubFrom_Load()

DimrstAsADODB、Recordset

DimsqlstrAsString

DimMsgTextAsString

DimiAsInteger

Text1、Text=“20000101”:

Text2、Text=“”:

Combo1、Text=“男”

Combo2、Text=“200001”:

Text5、Text=“2000-01-01”:

Text6、Text=“2000-01-01”

Text7、Text=“”:

Text8、Text=“”:

Text9、Text=“”

Combo1、AddItem“男”

Combo1、AddItem“女”

sqlstr=“selectfromclass_Info“

Setrst=QuerySQL(sqlstr,MsgText)

Fori=1Torst、RecordCount

Combo2、AddItemrst、Fields(0)

Rst、moveNext

Nexti

Rst、Close

EndSub

PrivateSubCommand1_Click()

DimrstAsADODB、Recordset

DimsqlstrAsString

DimMsgTextAsString

IfNotTesttxt(Text1、Text)Then

MsgBox“请输入学号!

”,vbOKOnly+vbExclamation,“警告”

Text1、SetFocus

ExitSub

EndIf

IfNotTesttxt(Text2、Text)Then

MsgBox“请输入姓名!

”,vbOKOnly+vbExclamation,“警告”

Text2、SetFocus

ExitSub

EndIf

IfNotTesttxt(Combo1、Text)Then

MsgBox“请选择性别!

”,vbOKOnly+vbExclamation,“警告”

Combo1、SetFocus

ExitSub

EndIf

IfNotTesttxt(Combo2、Text)Then

MsgBox“请输入班号!

”,vbOKOnly+vbExclamation,“警告”

Combo2、SetFocus

ExitSub

EndIf

IfNotTesttxt(Text5、Text)Then

MsgBox“请输入出生日期!

”,vbOKOnly+vbExclamation,“警告”

Text5、SetFocus

ExitSub

EndIf

IfNotTesttxt(Text6、Text)Then

MsgBox“请输入入校日期!

”,vbOKOnly+vbExclamation,“警告”

Text6、SetFocus

ExitSub

EndIf

IfNotTesttxt(Text7、Text)Then

MsgBox“请输入电话号码!

”,vbOKOnly+vbExclamation,“警告”

Text7、SetFocus

ExitSub

EndIf

IfNotTesttxt(Text8、Text)Then

MsgBox“请输入家庭住址!

”,vbOKOnly+vbExclamation,“警告”

Text8、SetFocus

ExitSub

EndIf

IfNotTesttxt(Text9、Text)Then

MsgBox“请输入备注信息!

”,vbOKOnly+vbExclamation,“警告”

Text9、SetFocus

ExitSub

EndIf

IfNotIsNumeric(Trim(Text1、Text))Then

MsgBox“请输入数字!

”,vbOKOnly+vbExclamation,“警告”

Text5、SetFocus

ExitSub

EndIf

sqlstr=“selectfromclass_Info“

student_ID=’”&Trim(Text1、Text)&“’”

Setrst=QuerySQL(sqlstr,MsgText)

Ifrst、EOF=FalseThen

MsgBox“学号重复,请重新输入!

”,vbOKOnly+vbExclamation,“警告”

rst、Close

Text1、SetFocus

Else

rst、Close

IfNotIsDate(Text5、Text)Then

MsgBox“此出生日期应输入格式(yyyy-mm-dd)!

”,

vbOKOnly+vbExclamation,“警告”

Text5、SetFocus

Else

Text5=Format(Text5,“yyyy-mm-dd”)

IfNotIsDate(Text6、Text)Then

MsgBox“入校时间应填日期格式(yyyy-mm-dd)!

”,

vbOKOnly+vbExclamation,“警告”

Text6、SetFocus

Else

Text6=Format(Text6,“yyyy-mm-dd”)

sqlstr=“select*fromstudent_Info”

Setrst=QuerySQL(sqlstr,MsgText)

rst、AddNew

rst、Fields(0)=Trim(Text1、Text)

rst、Fields

(1)=Trim(Text2、Text)

rst、Fields

(2)=Trim(Combo1、Text)

rst、Fields(3)=Trim(Text5、Text)

rst、Fields(4)=Trim(Combo2、Text)

rst、Fields(5)=Trim(Text7、Text)

rst、Fields(6)=Trim(Text6、Text)

rst、Fields(7)=Trim(Text8、Text)

rst、Fields(8)=Trim(Text9、Text)

MsgBox“添加学籍信息成功!

”,vbOKOnly+vbExclamation,“警告”

rst、Close

EndIf

EndIf

EndIf

EndSub

PrivateSubCommand2_Click()

UnloadMe

EndSub

图18修改学生信息窗体

 

图19查询学生信息窗体

 

模块的创建调试:

PublicfMainFormAsfrmMain

PublicUserNameAsString

SubMain()

DimfLoginAsNewfrmLogin

fLogin、ShowvbModal

IfNotfLogin、succThen

‘登录失败,退出应用程序

End

EndIf

UnloadfLogin

SetfMainForm、Show

EndSub

PublicFunctionQuerySQL(ByValSQL_图20模块的创建与调试

AsString,MsgAsString)_

AsADODB、Recordset

DimcnAsADODB、Connecrion

DimrSAsADODB、Recordset

Dimss()AsString

OnErrorGoToQuerySQL_Error

ss=Sqlit(SQL)

Setcn=NewADODB、Connection

ConnectString=“Driver=SQLServer;Server=zcj;UID=sa;PWD=sa;Database=Student”cn、OpenConnectString

IfInStr(“INSERT,DELETE,UPDATE”,UCase$(ss(0)))Then

cn、ExecuteSQL

Msg=ss(0)&_“查询成功”Else

SetrS=NewADODB、Recordset

rS、OpenTrim$(SQL),cn,adOpenKeyset,adLockOptimistic

SetQuerySQL=rS

Msg=“查询到”&rS、RecordCount&“条记录”EndIf

QuerySQL_Exit:

SetrS=NothingSetcn=NothingExitFunction

QuerySQL_Error:

Msg=“查询错误:

“&Err、Description

ResumeQuerySQL_Exit

EndFunction

PublicFunctionTesttxt(txtAsString)AsBoolean

IfTrim(txt)=“”Then

Testtxt=FalseElse

Testtxt=True

EndIf

EndFunction

六、总结及心得体会(感受、不足)

短暂的一周数据库实训课程转眼间已经结束,通过此次的实训课程练习,大大的提高了我的团队协作能力,我们分工明确,对本次的数据库设计内容进行了比较详细的规划。

首先,实训前针对所需要的文件进行了提前准备,调试了有关

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

当前位置:首页 > 成人教育 > 成考

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2