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

上传人:b****6 文档编号:7017155 上传时间:2023-01-16 格式:DOCX 页数:19 大小:740.70KB
下载 相关 举报
学生管理系统设计与开发.docx_第1页
第1页 / 共19页
学生管理系统设计与开发.docx_第2页
第2页 / 共19页
学生管理系统设计与开发.docx_第3页
第3页 / 共19页
学生管理系统设计与开发.docx_第4页
第4页 / 共19页
学生管理系统设计与开发.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

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

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

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

学生管理系统设计与开发

《数据库系统原理与应用》课程设计

成果报告

 

学生管理系统设计与开发

 

学生学号:

学生姓名:

学院:

计算机学院

专业班级:

计算机科学与技术1241班

专业课程:

数据库系统原理与应用

指导教师:

 

2015年1月4日

课程设计指导教师评分表

课程设计题目

学生管理系统设计与开发

成员

姓名

学号

任务分工

数据库的连接以及学生信息的查询删除

登陆界面的设计及编写代码,代码的调试

触发器的设计和学生信息的增加修改

评分项目及分值要素

成绩评定

项目

最高分

评分要素

成绩

1.学习态度

20

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

2.软件设计质量

40

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

3.答辩过程

20

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

4.设计报告书写

10

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

5.实际动手能力

10

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

总成绩

等级

评语

目录

一、需求分析1

二、概念结构设计2

三、逻辑结构设计2

四、数据库的物理设计3

五、数据库设计实现及运行4

(一)数据库的创建4

(二)数据表的创建5

(三)视图的创建5

(四)存储过程的定义实现6

(五)自行设计各模块中所涉及的操作语句6

六、系统详细设计及实现7

七、实训总结及心得体会17

 

学生管理系统设计与开发

一、需求分析

学生管理系统

1.问题描述:

(1)某大学有有多个系,每个系有多个班,每个班有多个学生。

(2)每个学生有学号,姓名,班级,性别,出生日期,地址等。

(3)班级有系编号,班级编号等。

(4)学校需要对每个学生的基本信息进行统一管理,以便对信息进行查询、浏览和修改。

2.系统功能描述,

(1)登入用户的信息,包括登入账号、密码以及权限

(2)学生的基本信息,学生的学号、姓名、班级、性别、出生日期等。

(3)班级的基本信息,班级的编号,所在系的编号等。

(4)学生权限,查看个人的基本信息,学号、姓名、班级等

(5)教务管理人员权限,查询,添加,删除学生的信息

我所负责的功能模块:

数据库的连接以及学生信息的查询删除.

可画出所设计模块的操作流程;

图1操作流程图

二、概念结构设计

画出系统局部及合并后的整体E-R模型;并对模型中所出现的实体及属性等信息加以说明。

图2学生信息E-R图

学生基本信息表Student(学号,姓名,性别,电话,地址,出生日期,班级)

三、逻辑结构设计

1.模式设计:

按系统整体E-R模型,

图3E-R图

写出关系模式;

(1)院系sdept(院系编号,院系名称)

(2)学生基本信息表Student(学生编号,姓名,性别,家庭电话,居住地址,所在院系编号)

(3)班级表Class(班级编号,班级名称,系编号)

(4)学生用户登入表Users(用户名,密码)

(5)教务管理员登入表Privilege(用户名,密码)

表1Class表

列名

数据类型

长度

允许空

Name

varchar

50

Dept-id

int

4

表2Department表

列名

数据类型

长度

允许空

id

int

4

Name

varchar

50

四、数据库的物理设计

数据库设计包括数据库需求分析、数据库概念设计和数据库物理设计。

数据库设计的目的,是为信息系统在数据库服务器上建立一个理想的数据模型。

数据库物理设计是指设计出数据库的物理数据模型,它是数据库在物理设备上的具体实现,即数据库服务器物理空间上的表空间、表、字段、索引、视图、储存过程、触发器,以及相应的数据字典的设计。

表3Students

五、数据库设计实现及运行

(一)数据库的创建

T-SQL语句:

createdatabaseStudents

(二)数据表的创建

T-SQL语句:

CREATETABLEClass

CnoCHAR(4)PRIMARYKEY,

idCHAR(4),

FOREIGNKEY(Cid)REFERENCESSdept(Cno)

insertintoClass(Cno,id)

values('98111','1');

insertintoClass(Cno,id)

values('98112','1');

insertintoClass(Cno,id)

alues('98121','1');

insertintoClass(Cno,id)

values('98112','1');

insertintoClass(Cno,id)

values('98211','2');

insertintoClass(Cno,id)

values('98212','2');

insertintoClass(Cno,id)

values('98221','2');

insertintoClass(Cno,id)

values('98222','2');

insertintoClass(Cno,id)

values('98311','3');

insertintoClass(Cno,id)

values('98312','3');

insertintoClass(Cno,id)

values('98321','3');

insertintoClass(Cno,id)

values('98322','3');

CREATETABLEDepartment

idCHAR(4)PRIMARYKEY,

NameCHAR(4),

insertintoDepartment(id,Name)

values('1','计算机系');

insertintoDepartment(id,Name)

values('2','信息系统系');

insertintoDepartment(id,Name)

values('1','通信系');

(三)视图的创建

T-SQL语句:

CREATEVIEWIS_Student

AS

SELECTSerial,Name,Class

FROMStudent

WHEREDepartent=’1’

CREATEVIEWIS_Student

AS

SELECTSerial,Name,,Class

FROMStudent

WHEREDepartent=’2’

CREATEVIEWIS_Student

AS

SELECTSerial,Name,Class

FROMStudent

WHEREDepartent=’3’

(四)存储过程的定义实现

T-SQL语句:

createproc[dbo].[ptr]

@classchar(8)

as

selectSerial,Name,Class

fromStudent

joinClassonStudent.Cno=Class.Cno

whereClass.Name=@class

groupbyStudent.Serial,Name,Class

orderbyStudent.Serialdesc

(五)自行设计各模块中所涉及的操作语句

删除操作代码:

PrivateSubcmdDelete_Click()

OnErrorGoToerrHandler

IfMsgBox("要删除记录?

",vbYesNos

Then

DataEnv.Con.Execute"deletefromstudentwhereserial='"&txtSerial&"'"

DataEnv.rsStudent.MoveNext+vbQuestion+vbDefaultButton2,"确认")=vbYe

IfDataEnv.rsStudent.EOF

ThenDataEnv.rsStudent.MoveLast

CallRefreshGrid

EndIf

ExitSub

errHandler:

MsgBoxErr.Description,vbCritical,"错误"

EndSub

学生个人信息查询:

设计代码:

OptionExplicit

PrivateSubcmdClose_Click()

UnloadMe

EndSub

PrivateSubForm_Load()

DataEnv.rsStudent.Find"serial='"&MDIMain.msUserName&"'"

EndSub

六、系统详细设计及实现

1.程序的开发环境:

操作系统:

Windowsxp以上

数据库系统:

SQLServer2008

开发平台:

MicrosoftVisualBasic6.0

2.系统功能模块图及说明。

图4系统功能图

登入模块功能描述:

教务管理人员登入,可以进行学生信息的添加,修改,查询,删除。

学生基本信息的管理:

进行学生信息的添加,修改,查询,删除。

学生登入功能描述:

查看自己的信息。

系班级本信息功能描述:

查看班级成员,系成员。

3.每个模块的关键语句、关键代码段及关键技术说明。

登入模块:

图5教务人员登录

 

功能描述:

教务管理人员登入,可以进行学生信息的添加,修改,查询,删除。

测试结果教务管理人员登入成功:

图6教务人员登录成功

设计代码:

OptionExplicit

DimmnUserTypeAsInteger

PrivateSubcmdCancel_Click()

UnloadMe

EndSub

PrivateSubcmdOK_Click()

DimuserAsString,pwdAsString

user=txtUser

pwd=txtPwd

DimrAsNewADODB.Recordset

Setr=DataEnv.rssqlSeek

DimstrSQLAsString

SelectCasemnUserType

Case0:

'若身份为管理员

strSQL="select*fromadminwherename='"&user&"'andpwd='"&pwd&"'"

Case1:

'若身份为学生

strSQL="select*fromstudentwherename='"&user&"'andserial='"&pwd&"'"

EndSelect

OnErrorResumeNext

Ifr.State=adStateOpenThenr.Close

r.OpenstrSQL

StaticnTryCountAsInteger

Ifr.EOFThen'登录失败

MsgBox"对不起,无此用户或者密码不正确!

请重新输入!

",vbCritical,"错误"

txtUser.SetFocus

txtUser.SelStart=0

txtUser.SelLength=Len(txtUser)

nTryCount=nTryCount+1

IfnTryCount>=3Then

MsgBox"您无权操作本系统!

再见!

",vbCritical,"无权限"

UnloadMe

EndIf

Else

LoadMDIMain

WithMDIMain

.mnUserType=mnUserType

.msUserName=pwd

.Show

EndWith

UnloadMe

EndIf

EndSub

PrivateSubForm_Load()

optUserType(0).Value=True

EndSub

PrivateSubfrmLogin_DragDrop(SourceAsControl,XAsSingle,YAsSingle)

EndSub

PrivateSuboptUserType_Click(IndexAsInteger)

mnUserType=Index

EndSub

 

添加数据操作:

图7添加数据

功能描述:

重新输入学号,班级,姓名,性别等,学号不能重复。

程少云学生信息添加成功:

图8数据添加成功

设计代码:

PrivateSubcmdAdd_Click()

fraSeek.Enabled=False

fraBrowse.Enabled=False

grdScan.Enabled=False

DataEnv.rsStudent.AddNew

txtBirthday.Text="1980-01-01"

fraInfo.Enabled=True

fraBrowse.Enabled=False

cmdAdd.Enabled=False

cmdEdit.Enabled=False

cmdDelete.Enabled=False

cmdUpdate.Enabled=True

cmdReport.Caption="取消"

cmdReport.Enabled=True

mbClose=False

EndSub

删除数据操作界面

图9删除数据

功能描述:

删除该学生的学号,班级等所有信息。

黄嵘学生信息删除成功:

图10数据删除成功

设计代码:

PrivateSubcmdDelete_Click()

OnErrorGoToerrHandler

IfMsgBox("要删除记录?

",vbYesNo+vbQuestion+vbDefaultButton2,"确认")=vbYes

Then

DataEnv.Con.Execute"deletefromstudentwhereserial='"&txtSerial&"'"

DataEnv.rsStudent.Move

Next

IfDataEnv.rsStudent.EOF

ThenDataEnv.rsStudent.MoveLast

CallRefreshGrid

EndIf

ExitSub

errHandler:

MsgBoxErr.Description,vbCritical,"错误"

EndSub

 

更新数据操作

图11数据更新

功能描述:

对学生的信息进行及时的更改。

对学号9811201同学的名字进行更新为叶兆:

图12数据更新成功

设计代码:

PrivateSubcmdReport_Click()

OnErrorResumeNext

IfcmdReport.Caption="取消"Then‘取消所使用的更新更新’

DataEnv.rsStudent.CancelUpdate

IfDataEnv.rsStudent.BOFThen

DataEnv.rsStudent.MoveFirst

Else

DataEnv.rsStudent.MovePrevious

DataEnv.rsStudent.MoveNext

EndIf

CallRefreshBinding

CallChangeBrowseState

fraSeek.Enabled=True

fraBrowse.Enabled=True

fraInfo.Enabled=False

grdScan.Enabled=True

cmdReport.Caption="报表(R)"

mbClose=True

Else‘生成报表’

DimstrSQLAsString

DataEnv.rsrptStudent.Close

strSQL="select*fromstudentwhereserial='"&txtSerial.Text&"'"

DataEnv.rsrptStudent.OpenstrSQL

rptStudent.Show

EndIf

EndSub

学生个人信息查询:

功能界面:

图13学生登录

功能界面简单描述:

学生登入,输入姓名,密码是学号,就可以看到自己的信息。

王武学生成功登入:

图14学生登录成功

设计代码:

OptionExplicit

PrivateSubcmdClose_Click()

UnloadMe

EndSub

PrivateSubForm_Load()

DataEnv.rsStudent.Find"serial='"&MDIMain.msUserName&"'"

EndSub

七、实训总结及心得体会

课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.本次课程设计虽然很辛苦,实在是受益匪浅。

本来这门课的知识学的就不够扎实,本次课程设计,在设计过程中碰到了很多问题,刚开始要设计的时候,还真不知道从哪里下手但最终在图书、同学和老师的帮助下都得到了解决,让我学会了好多书本上没有的东西,通过本次课程设计我也能将课本上的知识融会贯通,起到了很好的辅助学习的效果,但是我发现我学到的知识比整整一个学期学到的都多。

理论和实践的相结合是学习最有效的方法。

在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,通过这次课程设计之后,一定把以前所学过的知识温故知新。

我知道在此次的学生信息管理系统网站设计中有许多的欠缺,在以后的日子中,我一定得更加严格要求自己,改正缺点,不断努力,不断进步,争取做到更好。

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

当前位置:首页 > 总结汇报

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1