收藏 分销(赏)

学生宿舍管理系统设计书(含程序).doc

上传人:丰**** 文档编号:4758977 上传时间:2024-10-12 格式:DOC 页数:40 大小:490.01KB
下载 相关 举报
学生宿舍管理系统设计书(含程序).doc_第1页
第1页 / 共40页
学生宿舍管理系统设计书(含程序).doc_第2页
第2页 / 共40页
点击查看更多>>
资源描述
数据库原理及应用课程设计 设计说明书 学生宿舍管理系统 vb 学生姓名 学号 班级 成绩 指导教师 计算机科学与技术系 2009 年 3月 6 日 数据库原理及应用课程设计评阅书 题 目 学生宿舍管理系统设计与实现 学生姓名 学号 指导教师评语及成绩 成绩: 教师签名: 年 月 日 答辩教师评语及成绩 成绩: 教师签名: 年 月 日 教研室意见 总成绩: 室主任签名: 年 月 日 注:指导教师成绩60%,答辩成绩40%,总成绩合成后按五级制记入。 课程设计任务书 2008 —2009 学年第二学期 专业: 学号: 姓名: 课程设计名称: 数据库原理及应用课程设计 设计题目: 学生宿舍管理系统设计与实现 完成期限:自 2009年 2 月 23 日至 2009 年 3 月 6 日共 2 周 设计依据、要求及主要内容(可另加附页): 通过对学校公寓管理处业务进行分析、调查,设计学生宿舍管理系统。 内容及要求 (1)建立数据库 根据系统功能设计的要求以及功能模块的划分,设计相关数据库。 (2)卫生评比管理模块 该模块提供对卫生评比信息的管理功能,主要完成评比信息的录入、修改和删除以及评比结果的查询功能。 (3)违纪处理管理模块 该模块实现违纪处理信息的管理,主要完成违纪信息的录入、修改、删除和查询等功能。 (4)来客登记管理模块 该模块提供对来访人员信息的管理功能,主要提供来访登记、离开登记和来访信息查询功能。 (5)房间信息管理模块 该模块提供房间信息维护功能,主要是提供对房间信息的录入、修改、删除功能,同时提供房间分配和房间信息查询功能。 指导教师(签字): 教研室主任(签字): 批准日期: 年 月 日 5 摘 要 本软件的前台设计由Visual Basic 6.0实现,后台数据库用SQL Server进行创建和管理。本系统界面设计大方、简洁、实用,操作简单方便,是一款完全适合普通学校公寓管理的软件。该系统具有卫生评比、违纪处理、来客登记和房间信息功能。卫生评比管理模块提供对卫生评比信息的管理功能,违纪处理管理模块实现违纪处理信息的管理,来客登记管理模块提供对来访人员信息的管理功能,房间信息管理模块提供房间信息维护功能。 关键词 :公寓管理系统;Visual Basic 6.0;SQL Server 目 录 1 课题描述 1 2 需求分析 2 2.1 可行性研究 2 2. 1.1 技术可行性 2 2. 1.2经济可行性 2 2. 1.3操作可行性 2 2.2 功能需求 2 3系统设计 3 3.1系统层次模块图 3 3.2数据库设计 3 3.2.1数据库实体图设计 3 3.2.2数据库E-R图设计 4 3.2.3数据库关系模型设计 4 3.2.4数据库物理设计 5 3.3主控平台界面设计 6 4系统实现 7 4.1系统用户管理模块 7 4.2卫生评比管理模块 9 4.3违纪处理管理模块 14 4.4来客登记管理模块 19 4.5房间信息管理模块 26 5 系统测试 33 总 结 34 参考文献 35 陕西理工学院设计论文 1 课题描述 各个学校对学生宿舍的管理已经有了很长的历史,并且已经具备了一定的规模和形态,同时对学生公寓的服务和管理也要求很高.诸如对学生入住情况的详细了解,以及来访者的情况都要求宿舍管理人员做的好,做的完善。这样要求公寓管理人员对学生宿舍管理进行宏观的和微观的细致管理,其中最好的办法是用计算机操作的学生宿舍管理系统来实现对学生宿舍的管理。学生宿舍管理系统在各个学校中都具有广泛的应用,它具有卫生评比、违纪处理、来客登记和房间信息功能。它不仅具有检索迅速、查找方便、操作简单、可靠性高、存储量大、保密性好、寿命长和成本低的优点,还可以极大地提高宿舍管理员的工作效率和质量。 开发工具:Visual Basic 6.0 2 需求分析 2.1 可行性研究 可行性研究的目的,就是用最小的代价在尽可能短的时间内确定问题是否能够解决,是否值得去解。我们从三个方面来进行可行性研究,即技术可行性、经济可行性和操作可行性。 2. 1.1 技术可行性 学生宿舍管理系统,采用Visual Basic 6.0进行编程和界面设计,以 SQL server 2000为后台数据库来实现的,全面采用以窗口、表单、对话框和联机帮助为特征的图形用户界面的技术和操作方法。系统操作简单,功能大,使用方便,具有很强的技术可行性。 2. 1.2经济可行性 学生宿舍管理是一个很大的项目,在早期,还没有利用计算机管理时,一切都是利用人工进行管理的,这样管理起来既烦琐又复杂,资料也很容易被丢失,而且耗时、耗资金。而利用本系统,可以高效地对学生宿舍进行统一管理与控制,资料也不容易被丢失,这样大大节省了人力与资源,提高了管理效率,给管理人员带来很多方便。 2. 1.3操作可行性 操作可行性也即实用性。 随着计算机技术的发展以及网络的发展,对学生宿舍的管理与控制越来越实用并且得到管理者的证实,无论是查询还是修改都有很方便,查询的信息一目了然。因此,它具有很强的实用性。因此本系统在操作上也可行。 根据上述三个方面的研究得出:可以开发本系统。 2.2 功能需求 基于系统需求分析,该系统需要实现以下基本功能: 卫生评比管理模块,主要完成评比信息的录入、修改和删除以及评比结果的查询功能。 违纪处理管理模块,主要完成违纪信息的录入、修改、删除和查询等功能。 来客登记管理模块,主要提供来访登记、离开登记和来访信息查询功能。 房间信息管理模块,主要是提供对房间信息的录入、修改、删除功能,同时提供房间分配和房间信息查询功能。 数据库管理:对现有的数据库进行管理,包括数据备份和恢复,以方便用户对数据库的管理和维护工作,提高系统的数据安全性。 2.3 性能需求 系统运行环境:Windows 2000及其以上 数据库:SQL server 2000 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 登录窗口 其主要代码如下: Option Explicit Public strcon As String Private Sub btnCancel_Click() txtUserName.Text = "" txtPassword.Text = "" If MsgBox("退出吗?", vbOKCancel, "提示") = vbOK Then End End If End Sub Private Sub cmdok_Click() Rem 判断是否为空 If Len(txtUserName.Text) <= 0 Then MsgBox "用户名不能为空", vbExclamation, "警告" Exit Sub End If If Len(txtPassword.Text) <= 0 Then MsgBox "密码不能为空", vbExclamation, "警告" Exit Sub End If Rem 获取密码用户 Dim struser As String struser = txtUserName.Text Dim strpw As String strpw = txtPassword.Text Dim strsql As String strsql = "select [ano] as [user],[secret] as [pw] from adminer " Dim conn As New ADODB.Connection Dim rst As New ADODB.Recordset Dim cmd As New ADODB.Command conn.ConnectionString = strcon '引用公共变量 On Error GoTo con conn.Open cmd.ActiveConnection = conn cmd.CommandText = strsql Set rst = cmd.Execute Do Until rst.EOF If UCase(struser) = UCase(rst("user")) Then If strpw = rst("pw") Then '密码正确,显示窗体,退出循环 main.Show Unload Me rst.Close conn.Close txtUserName.Text = "" txtPassword.Text = "" Exit Sub Else '密码错误 MsgBox "密码错误", vbExclamation, "警告" txtPassword.Text = "" rst.Close conn.Close Exit Sub End If End If rst.MoveNext Loop rst.Close conn.Close MsgBox "不存在该用户", vbExclamation, "警告" txtPassword.Text = "" Exit Sub con: MsgBox "请确认以下设置" & Chr(13) + Chr(10) & "SQL Server 服务器已经启动;" & Chr(13) + Chr(10) & "数据库身份验证模式为[SQL Server 和 Windows身份验证模式]" End Sub Private Sub Form_Load() strcon = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=学生宿舍管理系统;server=(local)" End Sub Private Sub Label1_Click() End Sub 4.2卫生评比管理模块 创建一个卫生评比管理窗体,里面包括查询、添加和修改功能,利用Label、Textbox、Button和 DatGird等画出如下窗体。 图4.2卫生评分录入界面 图4.2卫生评分录入界面 图4.3卫生评分查询界面 其主要代码如下: Public strcon As String Private Sub Command1_Click() If Trim(Text1.Text) = "" Then MsgBox "没有选中任何行或则[学号]为空!", vbInformation, "提示" Exit Sub End If On Error GoTo myError: Dim strsql As String strsql = "select 宿舍号 from 宿舍 " Dim conn As New ADODB.Connection Dim rst As New ADODB.Recordset Dim cmd As New ADODB.Command conn.ConnectionString = strcon '引用公共变量 conn.Open cmd.ActiveConnection = conn cmd.CommandText = strsql Set rst = cmd.Execute Do Until rst.EOF Dim strsno As String strsno = UCase(rst("宿舍号")) rst.MoveNext Loop If strsno <> UCase(Text1.Text) Then MsgBox "该宿舍不存在!", vbExclamation, "提示" conn.Close Exit Sub End If strsql = "update 宿舍 set 卫生情况='" & Text2.Text & "' where 宿舍号='" & Text1.Text & "'" Call sqlcmd(strsql) MsgBox "执行成功!", vbInformation, "提示" Text1.Text = "" Text2.Text = "" Exit Sub myError: MsgBox "更新失败!" & Chr(10) + Chr(13) & "更新的数据中存在非法字符[空格、单引号、双引号、空]", vbExclamation, "提示" End Sub Private Sub Command2_Click() Unload Me End Sub Sub sqlcmd(strsql As String) '更新、删除、插入数据 Dim conn As New ADODB.Connection Dim cmd As New ADODB.Command conn.ConnectionString = strcon '引用公共变量 conn.Open cmd.ActiveConnection = conn cmd.CommandText = strsql cmd.Execute conn.Close End Sub Private Sub Form_Load() strcon = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=学生宿舍管理系统;server=(local)" End Sub Private Sub Text1_Change() End Sub Option Explicit Public blnNeedUpdate As Boolean Public blnAdding As Boolean Public strcon As String Private Sub Command1_Click() Dim struser As String If Len(Text1.Text) <> 0 Then struser = Text1.Text Else If Len(Text2.Text) <> 0 Then struser = Text2.Text Else MsgBox "信息不能为空", vbExclamation, "警告" End If End If Dim strsql As String Dim strsql1 As String strsql = "select [宿舍号] as [sushe] from 宿舍 " Dim conn As New ADODB.Connection Dim rst As New ADODB.Recordset Dim cmd As New ADODB.Command conn.ConnectionString = strcon '引用公共变量 conn.Open cmd.ActiveConnection = conn cmd.CommandText = strsql Set rst = cmd.Execute Do Until rst.EOF If UCase(struser) = UCase(rst("sushe")) Then strsql1 = "select 宿舍号,卫生情况 from 宿舍 where 宿舍号='" & Text1.Text & "'" Call bindGrid(strsql1) Exit Sub Else strsql1 = "select 宿舍号,卫生情况 from 宿舍 where 卫生情况='" & Text2.Text & "'" Call bindGrid(strsql1) End If rst.MoveNext Loop rst.Close conn.Close End Sub Sub bindGrid(strsql As String) Rem 绑定datagrid Dim conn As New ADODB.Connection Dim rst As New ADODB.Recordset conn.ConnectionString = strcon '引用公共变量 conn.CursorLocation = adUseClient conn.Open rst.Open strsql, conn, adOpenDynamic, adLockBatchOptimistic Set DataGrid1.DataSource = rst.DataSource Call gridWidth End Sub Private Sub Command2_Click() Unload Me End Sub Private Sub Command3_Click() If Trim(Text1.Text) = "" Then MsgBox "没有选中任何行或则[宿舍号]为空!", vbInformation, "提示" Exit Sub End If On Error GoTo myError: Dim strsql As String strsql = "update 宿舍 set 宿舍号='" & Text1.Text & "',卫生情况='" & Text2.Text & "' where 宿舍号='" & Text1.Text & "'" Call sqlcmd(strsql) blnAdding = False strsql = "select 宿舍号,卫生情况 from 宿舍 where 宿舍号='" & Text1.Text & "'" Call bindGrid(strsql) MsgBox "执行成功!", vbInformation, "提示" Text1.Text = "" Text2.Text = "" Exit Sub myError: MsgBox "更新失败!" & Chr(10) + Chr(13) & "更新的数据中存在非法字符[空格、单引号、双引号、空]", vbExclamation, "提示" End Sub Private Sub Command4_Click() Text1.Locked = False Text1.Text = "" Text2.Text = "" End Sub Private Sub DataGrid1_Click() blnAdding = False Text1.Locked = True Dim n As Integer Dim DgCount As Integer DgCount = DataGrid1.Columns.Count For n = 0 To DgCount - 1 DataGrid1.Col = n Select Case n Case 0 Text1.Text = DataGrid1.Text Case 1 Text2.Text = DataGrid1.Text End Select Next n End Sub Private Sub Form_Load() strcon = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=学生宿舍管理系统;server=(local)" End Sub Sub gridWidth() Dim n As Integer Dim DgCount As Integer DgCount = DataGrid1.Columns.Count For n = 0 To DgCount - 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 Next n End Sub Private Sub DridStudent_RowColChange(LastRow As Variant, ByVal LastCol As Integer) End Sub Sub sqlcmd(strsql As String) '更新、删除、插入数据 Dim conn As New ADODB.Connection Dim cmd As New ADODB.Command conn.ConnectionString = strcon '引用公共变量 conn.Open cmd.ActiveConnection = conn cmd.CommandText = strsql cmd.Execute conn.Close End Sub 4.3违纪处理管理模块 创建一个违纪处理管理窗体,里面包括查询、添加和修改功能,利用Label、Textbox、Button和 DatGird等画出如下窗体,如下图所示。 图4.4违纪情况录入界面 图4.5违纪情况查询界面 其主要代码如下: Public strcon As String Private Sub Command1_Click() If Trim(Text1.Text) = "" Then MsgBox "没有选中任何行或则[学号]为空!", vbInformation, "提示" Exit Sub End If On Error GoTo myError: Dim strsql As String strsql = "select 学号 from 学生 " Dim conn As New ADODB.Connection Dim rst As New ADODB.Recordset Dim cmd As New ADODB.Command conn.ConnectionString = strcon '引用公共变量 conn.Open cmd.ActiveConnection = conn cmd.CommandText = strsql Set rst = cmd.Execute Do Until rst.EOF Dim strsno As String strsno = UCase(rst("学号")) rst.MoveNext If strsno = UCase(Text1.Text) Then strsql = "update 学生 set 违纪处理情况='" & Text2.Text & "' where 学号='" & Text1.Text & "'" Call sqlcmd(strsql) MsgBox "执行成功!", vbInformation, "提示" Text1.Text = "" Text2.Text = "" Exit Sub End If Loop MsgBox "该学生不存在!", vbExclamation, "提示" conn.Close Exit Sub myError: MsgBox "更新失败!" & Chr(10) + Chr(13) & "更新的数据中存在非法字符[空格、单引号、双引号、空]", vbExclamation, "提示" End Sub Private Sub Command2_Click() Unload Me End Sub Sub sqlcmd(strsql As String) '更新、删除、插入数据 Dim conn As New ADODB.Connection Dim cmd As New ADODB.Command conn.ConnectionString = strcon '引用公共变量 conn.Open cmd.ActiveConnection = conn cmd.CommandText = strsql cmd.Execute conn.Close End Sub Private Sub Form_Load() strcon = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=学生宿舍管理系统;server=(local)" End Sub Private Sub Frame1_DragDrop(Source As Control, X As Single, Y As Single) End Sub Option Explicit Public blnNeedUpdate As Boolean Public blnAdding As Boolean Public strcon As String Private Sub Command1_Click() Dim struser As String If Len(Text1.Text) <> 0 Then struser = Text1.Text Else If Len(Text2.Text) <> 0 Then struser = Text2.Text Else MsgBox "信息不能为空", vbExclamation, "警告" End If End If Dim strsql As String Dim strsql1 As String strsql = "select [学号] as [sushe] from 学生 " Dim conn As New ADODB.Connection Dim rst As New ADODB.Recordset Dim cmd As New ADODB.Command conn.ConnectionString = strcon '引用公共变量 conn.Open cmd.ActiveConnection = conn cmd.CommandText = strsql Set rst = cmd.Execute Do Until rst.EOF If UCase(struser) = UCase(rst("sushe")) Then strsql1 = "select 学号,违纪处理情况 from 学生 where 学号='" & Text1.Text & "'" Call bindGrid(strsql1) Exit Sub Else strsql1 = "select 学号,违纪处理情况 from 学生 where 学号='" & Text2.Text & "'" Call bindGrid(strsql1) End If rst.MoveNext Loop rst.Close conn.Close End Sub Sub bindGrid(strsql As String) Rem 绑定datagrid Dim conn As New ADODB.Connection Dim rst As New ADODB.Recordset conn.ConnectionString = strcon '引用公共变量 conn.CursorLocation = adUseClient conn.Open rst.Open strsql, conn, adOpenDynamic, adLockBatchOptimistic Set DataGrid1.DataSource = rst.DataSource Call gridWidth End Sub Private Sub Command2_Click() Unload Me End Sub Private Sub Command3_Click() If Trim(Text1.Text) = "" Then MsgBox "没有选中任何行或则[学号]为空!", vbInformation, "提示" Exit Sub End If On Error GoTo myError: Dim strsql As String strsql = "update 学生 set 学号='" & Text1.Text & "',违纪处理情况='" & Text2.Text & "' where 学号='" & Text1.Text & "'" Call sqlcmd(strsql) blnAdding = False strsql = "select 学号,违纪处理情况 from 学生 where 学号='" & Text1.Text & "'" Call bindGrid(strsql) MsgBox "执行成功!", vbInformation, "提示" Text1.Text = "" Text2.Text = "" Exit Sub myError: MsgBox "更新失败!" & Chr(10) + Chr(13) & "更新的数据中存在非法字符[空格、单引号、双引号、空]", vbExclamation, "提示" End Sub Private Sub Command4_Click() Text1.Locked = False Text1.Text = "" T
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服