某学生宿舍管理系统设计书.docx
- 文档编号:14038522
- 上传时间:2023-06-20
- 格式:DOCX
- 页数:49
- 大小:198.99KB
某学生宿舍管理系统设计书.docx
《某学生宿舍管理系统设计书.docx》由会员分享,可在线阅读,更多相关《某学生宿舍管理系统设计书.docx(49页珍藏版)》请在冰点文库上搜索。
某学生宿舍管理系统设计书
某学生宿舍管理系统设计书
1课题描述
各个学校对学生宿舍的管理已经有了很长的历史,并且已经具备了一定的规模和形态,同时对学生公寓的服务和管理也要求很高.诸如对学生入住情况的详细了解,以及来访者的情况都要求宿舍管理人员做的好,做的完善。
这样要求公寓管理人员对学生宿舍管理进行宏观的和微观的细致管理,其中最好的办法是用计算机操作的学生宿舍管理系统来实现对学生宿舍的管理。
学生宿舍管理系统在各个学校中都具有广泛的应用,它具有卫生评比、违纪处理、来客登记和房间信息功能。
它不仅具有检索迅速、查找方便、操作简单、可靠性高、存储量大、保密性好、寿命长和成本低的优点,还可以极大地提高宿舍管理员的工作效率和质量。
开发工具:
VisualBasic6.0
2需求分析
2.1可行性研究
可行性研究的目的,就是用最小的代价在尽可能短的时间内确定问题是否能够解决,是否值得去解。
我们从三个方面来进行可行性研究,即技术可行性、经济可行性和操作可行性。
2.1.1技术可行性
学生宿舍管理系统,采用VisualBasic6.0进行编程和界面设计,以SQLserver2000为后台数据库来实现的,全面采用以窗口、表单、对话框和联机帮助为特征的图形用户界面的技术和操作方法。
系统操作简单,功能大,使用方便,具有很强的技术可行性。
2.1.2经济可行性
学生宿舍管理是一个很大的项目,在早期,还没有利用计算机管理时,一切都是利用人工进行管理的,这样管理起来既烦琐又复杂,资料也很容易被丢失,而且耗时、耗资金。
而利用本系统,可以高效地对学生宿舍进行统一管理与控制,资料也不容易被丢失,这样大大节省了人力与资源,提高了管理效率,给管理人员带来很多方便。
2.1.3操作可行性
操作可行性也即实用性。
随着计算机技术的发展以及网络的发展,对学生宿舍的管理与控制越来越实用并且得到管理者的证实,无论是查询还是修改都有很方便,查询的信息一目了然。
因此,它具有很强的实用性。
因此本系统在操作上也可行。
根据上述三个方面的研究得出:
可以开发本系统。
2.2功能需求
基于系统需求分析,该系统需要实现以下基本功能:
卫生评比管理模块,主要完成评比信息的录入、修改和删除以及评比结果的查询功能。
违纪处理管理模块,主要完成违纪信息的录入、修改、删除和查询等功能。
来客登记管理模块,主要提供来访登记、离开登记和来访信息查询功能。
房间信息管理模块,主要是提供对房间信息的录入、修改、删除功能,同时提供房间分配和房间信息查询功能。
数据库管理:
对现有的数据库进行管理,包括数据备份和恢复,以方便用户对数据库的管理和维护工作,提高系统的数据安全性。
2.3性能需求
系统运行环境:
Windows2000及其以上
数据库:
SQLserver2000
3系统设计
3.1系统层次模块图
图3.1系统层次模块图
3.2数据库设计
3.2.1数据库实体图设计
图3.2宿舍实体图
图3.3学生实体图
图3.4访客实体图
3.2.2数据库E-R图设计
图3.5宿舍管理系统E-R图
3.2.3数据库关系模型设计
宿舍(宿舍号,卫生情况,备注)
学生(学号,姓名,班级,违纪处理情况)
宿舍信息(宿舍号,学号)
访客(姓名,来访时间,离开时间)
访客信息(姓名,来访时间,学号)
3.2.4数据库物理设计
系统建立的数据库表主要有五个,如下图所示。
字段名
数据类型
字段长度与格式
关键字
宿舍号
varchar
5
是
卫生情况
varchar
50
否
备注
varchar
50
否
图3.6“宿舍”信息表结构
字段名
数据类型
字段长度与格式
关键字
学号
varchar
5
是
姓名
varchar
50
否
班级
varchar
50
否
违纪处理情况
varchar
50
否
图3.7“学生”信息表结构
字段名
数据类型
字段长度与格式
关键字
学号
varchar
5
是
宿舍号
varchar
5
是
图3.8“宿舍信息”信息表结构
字段名
数据类型
字段长度与格式
关键字
姓名
varchar
50
是
访问时间
varchar
50
是
离开时间
varchar
50
否
图3.9“访客”信息表结构
字段名
数据类型
字段长度与格式
关键字
学号
varchar
50
是
姓名
varchar
50
是
来访时间
varchar
50
否
图3.10“访客信息”信息表结构
3.3主控平台界面设计
充分考虑易于操作的系统需求,主控制平台使用简单和直观的布局设计。
4系统实现
4.1系统用户管理模块
创建一个系统登录窗体、一个转入窗体的主窗口窗体,利用组合框为用户提供数据,实现多项选择的功能,如图4.1所示。
图4.1登录窗口
其主要代码如下:
OptionExplicit
PublicstrconAsString
PrivateSubbtnCancel_Click()
txtUserName.Text=""
txtPassword.Text=""
IfMsgBox("退出吗?
",vbOKCancel,"提示")=vbOKThen
End
EndIf
EndSub
PrivateSubcmdok_Click()
Rem判断是否为空
IfLen(txtUserName.Text)<=0Then
MsgBox"用户名不能为空",vbExclamation,"警告"
ExitSub
EndIf
IfLen(txtPassword.Text)<=0Then
MsgBox"密码不能为空",vbExclamation,"警告"
ExitSub
EndIf
Rem获取密码用户
DimstruserAsString
struser=txtUserName.Text
DimstrpwAsString
strpw=txtPassword.Text
DimstrsqlAsString
strsql="select[ano]as[user],[secret]as[pw]fromadminer"
DimconnAsNewADODB.Connection
DimrstAsNewADODB.Recordset
DimcmdAsNewADODB.Command
conn.ConnectionString=strcon'引用公共变量
OnErrorGoTocon
conn.Open
cmd.ActiveConnection=conn
cmd.CommandText=strsql
Setrst=cmd.Execute
DoUntilrst.EOF
IfUCase(struser)=UCase(rst("user"))Then
Ifstrpw=rst("pw")Then
'密码正确,显示窗体,退出循环
main.Show
UnloadMe
rst.Close
conn.Close
txtUserName.Text=""
txtPassword.Text=""
ExitSub
Else
'密码错误
MsgBox"密码错误",vbExclamation,"警告"
txtPassword.Text=""
rst.Close
conn.Close
ExitSub
EndIf
EndIf
rst.MoveNext
Loop
rst.Close
conn.Close
MsgBox"不存在该用户",vbExclamation,"警告"
txtPassword.Text=""
ExitSub
con:
MsgBox"请确认以下设置"&Chr(13)+Chr(10)&"SQLServer服务器已经启动;"&Chr(13)+Chr(10)&"数据库身份验证模式为[SQLServer和Windows身份验证模式]"
EndSub
PrivateSubForm_Load()
strcon="Provider=SQLOLEDB.1;IntegratedSecurity=SSPI;PersistSecurityInfo=False;InitialCatalog=学生宿舍管理系统;server=(local)"
EndSub
PrivateSubLabel1_Click()
EndSub
4.2卫生评比管理模块
创建一个卫生评比管理窗体,里面包括查询、添加和修改功能,利用Label、Textbox、Button和DatGird等画出如下窗体。
图4.2卫生评分录入界面
图4.2卫生评分录入界面
图4.3卫生评分查询界面
其主要代码如下:
PublicstrconAsString
PrivateSubCommand1_Click()
IfTrim(Text1.Text)=""Then
MsgBox"没有选中任何行或则[学号]为空!
",vbInformation,"提示"
ExitSub
EndIf
OnErrorGoTomyError:
DimstrsqlAsString
strsql="select宿舍号from宿舍"
DimconnAsNewADODB.Connection
DimrstAsNewADODB.Recordset
DimcmdAsNewADODB.Command
conn.ConnectionString=strcon'引用公共变量
conn.Open
cmd.ActiveConnection=conn
cmd.CommandText=strsql
Setrst=cmd.Execute
DoUntilrst.EOF
DimstrsnoAsString
strsno=UCase(rst("宿舍号"))
rst.MoveNext
Loop
Ifstrsno<>UCase(Text1.Text)Then
MsgBox"该宿舍不存在!
",vbExclamation,"提示"
conn.Close
ExitSub
EndIf
strsql="update宿舍set卫生情况='"&Text2.Text&"'where宿舍号='"&Text1.Text&"'"
Callsqlcmd(strsql)
MsgBox"执行成功!
",vbInformation,"提示"
Text1.Text=""
Text2.Text=""
ExitSub
myError:
MsgBox"更新失败!
"&Chr(10)+Chr(13)&"更新的数据中存在非法字符[空格、单引号、双引号、空]",vbExclamation,"提示"
EndSub
PrivateSubCommand2_Click()
UnloadMe
EndSub
Subsqlcmd(strsqlAsString)
'更新、删除、插入数据
DimconnAsNewADODB.Connection
DimcmdAsNewADODB.Command
conn.ConnectionString=strcon'引用公共变量
conn.Open
cmd.ActiveConnection=conn
cmd.CommandText=strsql
cmd.Execute
conn.Close
EndSub
PrivateSubForm_Load()
strcon="Provider=SQLOLEDB.1;IntegratedSecurity=SSPI;PersistSecurityInfo=False;InitialCatalog=学生宿舍管理系统;server=(local)"
EndSub
PrivateSubText1_Change()
EndSub
OptionExplicit
PublicblnNeedUpdateAsBoolean
PublicblnAddingAsBoolean
PublicstrconAsString
PrivateSubCommand1_Click()
DimstruserAsString
IfLen(Text1.Text)<>0Then
struser=Text1.Text
Else
IfLen(Text2.Text)<>0Then
struser=Text2.Text
Else
MsgBox"信息不能为空",vbExclamation,"警告"
EndIf
EndIf
DimstrsqlAsString
Dimstrsql1AsString
strsql="select[宿舍号]as[sushe]from宿舍"
DimconnAsNewADODB.Connection
DimrstAsNewADODB.Recordset
DimcmdAsNewADODB.Command
conn.ConnectionString=strcon'引用公共变量
conn.Open
cmd.ActiveConnection=conn
cmd.CommandText=strsql
Setrst=cmd.Execute
DoUntilrst.EOF
IfUCase(struser)=UCase(rst("sushe"))Then
strsql1="select宿舍号,卫生情况from宿舍where宿舍号='"&Text1.Text&"'"
CallbindGrid(strsql1)
ExitSub
Else
strsql1="select宿舍号,卫生情况from宿舍where卫生情况='"&Text2.Text&"'"
CallbindGrid(strsql1)
EndIf
rst.MoveNext
Loop
rst.Close
conn.Close
EndSub
SubbindGrid(strsqlAsString)
Rem绑定datagrid
DimconnAsNewADODB.Connection
DimrstAsNewADODB.Recordset
conn.ConnectionString=strcon'引用公共变量
conn.CursorLocation=adUseClient
conn.Open
rst.Openstrsql,conn,adOpenDynamic,adLockBatchOptimistic
SetDataGrid1.DataSource=rst.DataSource
CallgridWidth
EndSub
PrivateSubCommand2_Click()
UnloadMe
EndSub
PrivateSubCommand3_Click()
IfTrim(Text1.Text)=""Then
MsgBox"没有选中任何行或则[宿舍号]为空!
",vbInformation,"提示"
ExitSub
EndIf
OnErrorGoTomyError:
DimstrsqlAsString
strsql="update宿舍set宿舍号='"&Text1.Text&"',卫生情况='"&Text2.Text&"'where宿舍号='"&Text1.Text&"'"
Callsqlcmd(strsql)
blnAdding=False
strsql="select宿舍号,卫生情况from宿舍where宿舍号='"&Text1.Text&"'"
CallbindGrid(strsql)
MsgBox"执行成功!
",vbInformation,"提示"
Text1.Text=""
Text2.Text=""
ExitSub
myError:
MsgBox"更新失败!
"&Chr(10)+Chr(13)&"更新的数据中存在非法字符[空格、单引号、双引号、空]",vbExclamation,"提示"
EndSub
PrivateSubCommand4_Click()
Text1.Locked=False
Text1.Text=""
Text2.Text=""
EndSub
PrivateSubDataGrid1_Click()
blnAdding=False
Text1.Locked=True
DimnAsInteger
DimDgCountAsInteger
DgCount=DataGrid1.Columns.Count
Forn=0ToDgCount-1
DataGrid1.Col=n
SelectCasen
Case0
Text1.Text=DataGrid1.Text
Case1
Text2.Text=DataGrid1.Text
EndSelect
Nextn
EndSub
PrivateSubForm_Load()
strcon="Provider=SQLOLEDB.1;IntegratedSecurity=SSPI;PersistSecurityInfo=False;InitialCatalog=学生宿舍管理系统;server=(local)"
EndSub
SubgridWidth()
DimnAsInteger
DimDgCountAsInteger
DgCount=DataGrid1.Columns.Count
Forn=0ToDgCount-1
DataGrid1.Columns(n).Width=Len(DataGrid1.Columns(n).Caption)*350
DataGrid1.Col=n
DataGrid1.AllowAddNew=False
DataGrid1.AllowArrows=False
DataGrid1.AllowDelete=False
DataGrid1.AllowUpdate=False
Nextn
EndSub
PrivateSubDridStudent_RowColChange(LastRowAsVariant,ByValLastColAsInteger)
EndSub
Subsqlcmd(strsqlAsString)
'更新、删除、插入数据
DimconnAsNewADODB.Connection
DimcmdAsNewADODB.Command
conn.ConnectionString=strcon'引用公共变量
conn.Open
cmd.ActiveConnection=conn
cmd.CommandText=strsql
cmd.Execute
conn.Close
EndSub
4.3违纪处理管理模块
创建一个违纪处理管理窗体,里面包括查询、添加和修改功能,利用Label、Textbox、Button和DatGird等画出如下窗体,如下图所示。
图4.4违纪情况录入界面
图4.5违纪情况查询界面
其主要代码如下:
PublicstrconAsString
PrivateSubCommand1_Click()
IfTrim(Text1.Text)=""Then
MsgBox"没有选中任何行或则[学号]为空!
",vbInformation,"提示"
ExitSub
EndIf
OnErrorGoTomyError:
DimstrsqlAsString
strsql="select学号from学生"
DimconnAsNewADODB.Connection
DimrstAsNewADODB.Recordset
DimcmdAsNewADODB.Command
conn.ConnectionString=strcon'引用公共变量
conn.Open
cmd.ActiveConnection=conn
cmd.CommandText=strsql
Setrst=cmd.Execute
DoUntilrst.EOF
DimstrsnoAsString
strsno=UCase(rst("学号"))
rst.MoveNext
Ifstrsno=UCase(Text1.Text)Then
strsql="update学生set违纪处理情况='"&Text2.Text&"'where学号='"&Text1.Text&"'"
Callsqlcmd(strsql)
MsgBox"执行成功!
",vbInformation,"提示"
Text1.Text=""
Text2.Text=""
ExitSub
EndIf
Loop
MsgBox"该学生不存在!
",vbExclamation,"提示"
conn.Close
ExitSub
myError:
MsgBox"更新失败!
"&Chr(10)+Chr(13)&"更新的数据中存在非法字符[空格、单引号、双引号、空]",vbExclamation,"提示"
EndSub
PrivateSubCommand2_Click()
UnloadMe
EndSub
Subsqlcmd(strsqlAsString)
'更新、删除、插入数据
Dimconn
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生宿舍 管理 系统 设计