《宿舍管理系统——课程设计.doc》由会员分享,可在线阅读,更多相关《宿舍管理系统——课程设计.doc(23页珍藏版)》请在三一办公上搜索。
1、学校代码: 课程设计说明书题 目: 宿舍管理系统学生姓名: 学 院: 理学院班 级: 信计10-2指导教师: 二一三年七月四日内蒙古工业大学课程设计(论文)任务书课程名称: 数据库原理及应用课程设计 学院: 理学院 班级: 信计10-2 学生姓名: 学号: 指导教师: 一、题目宿舍管理系统二、目的与意义课程设计、综合设计的基本教学目的是培养学生综合运用所学知识和技能分析与解决实际问题的能力,以及严肃认真的科学态度和严谨求实的工作作风。 三、要求(包括原始数据、技术参数、设计要求、图纸量、工作量要求等) l 采用SQL Server 2005建立数据库,采用界面方式或命令方式创建数据库和表。l
2、选用一种开发环境设计界面,实现信息的插入、修改、删除、查询的基本功能。l 在开发环境下,通过某种方法建立与SQL Server 2005数据库的连接。四、工作内容、进度安排 主要内容用 VB 程序设计语言及开发环境实现简单的宿舍管理系统,后台数据库采用SQL Server 2005,完成开发环境和后台数据库的连接,系统功能包含基本信息的查询、录入、修改、以及删除。工作进度安排第一天:熟悉课程设计题目及具体要求,对所解决的问题尽量做到胸中有数,基本确定选择的高级语言及开发环境。第二天到第四天:拿出解决问题的初步方案,根据课题给出的用户基本需求,写出各数据实体的数据项和联系实体的活动以及活动要使用
3、的数据项,通过ER图来表示。由ER图建立适当的表,并按照不同范式的定义,对表进行规范化,并在数据库管理系统中实现设计的数据库和表。第五天到第七天:设计功能模块,确定每个模块的功能,以及各个模块之间的关系。第八天到第十天:对每个模块进行具体分析,确定需要的用户界面以及结构,完成软件的整体框架,在开发环境下,编程实现所开发的系统。第十一天到第十二天:综合调试,去除软件中的bug,美化应用程序的界面。有能力的学生增加简单的数据校验、在线错误处理和在线帮助的功能。第十三天和第十五天:撰写课程设计报告。五、主要参考文献郑阿奇主编.SQL Server 实用教程.第3版.北京:电子工业出版社.2009审核
4、意见系(教研室)主任(签字) 指导教师下达时间 2013 年 6月 17日指导教师签字:_摘要由于计算机技术的迅速发展和普及,信息管理系统在现代社会已深入到各行各业,大学生宿舍管理系统就是一个典型的例子。宿舍管理系统是目前各所高校后勤管理之中的重要部分。因此,宿舍管理部分工作的信息化和科学化管理有着十分重要的实践意义,本系统旨在实现对现有的宿舍管理系统中遇到的宿舍信息情况和大量数据进行数据库存储的基础上,实现了系统维护、宿舍管理、学生管理、信息查询等必需的功能。本系统采用Visual Basic作为前台开发工具,SQL Server作为后台数据库平台的基于C/S的两层模式的管理系统。利用其提供
5、的各种面向对象的开发工具,设计完成一个操作简单,运行比较稳定,适用于大学院校的宿舍管理系统。本系统主要包括系统管理,学生信息管理,日常工作管理,和帮助等四大模块,重点是学生信息管理和日常工作管理部分。在每一模块中,必须做到良好的输入/输出界面,并能做查询,删除及修改等功能。本系统的重点是学生信息管理和日常工作管理部分。关键字:数据库;宿舍管理系统;Visual Basic;SQL ServerAbstractDue to the rapid development of computer technology and popularization, the information manage
6、ment system has been deeply into all walks of life in modern society, college students dormitory management system is a typical example. Dormitory management system is an important part of the logistics management in universities. Dormitory management part of the work, therefore, informatization and
7、 scientific management has very important practical significance, this system is to realize the existing dormitory dormitory information management system in the situation and a large amount of data on the basis of the database storage, implements the system maintenance, dormitory management, studen
8、t management, information query, etc required functionality. This system USES Visual Basic as a front-end development tool, SQL Server as a backend database platform based on C/S two layer model of the management system. Use with the various object-oriented development tools, designed a simple opera
9、tion, operation is stable, apply college dormitory management system. This system mainly includes system management, student information management, daily work management, and help and so on four big modules, the focus is on the student information management and daily work management section. In ea
10、ch module, must do a good input/output interface, and can do a query, delete, modify functions, etc. This system focuses on the student information management and daily work management section. Keywords: database; Dormitory management system; Visual Basic; SQL Server 目录绪论.1第一章 相关技术介绍.21.1 Visual Bas
11、ic 6.0开发环境.21.2 开发的必要性.21.3 系统开发的可行性.21.4 SQL查询语言及使用.3第二章 系统需求分析.42.1 系统初步调查.42.2 系统功能分析.42.2.1 系统功能分析.42.2.2 业务流程概述.42.2.3 数据流图.5第三章 系统设计.63.1 概念结构设计.63.2 逻辑结构设计.63.2.1将E-R图转换为关系模型.63.2.2 逻辑结构定义.73.3物理结构设计. 8第四章 应用程序开发.94.1 系统主界面.94.2 用户登录界面.94.3 用户管理界面. 114.3.1查询信息主界面.114.3.2 添加学生信息界面. 124.3.3修改信息
12、界面.14参考文献. 17 绪论 随着时代的发展,数据库管理系统已经深入到了社会生活的各个领域,为广大的用户提供了周到和便捷的服务,其用户群十分庞大,因此,设计开发好一个专用系统对一个部门的发展十分重要。对于学校而言,学生宿舍管理是必不可少的组成部分。有些学校停留在宿舍管理部门人员手工记录数据的阶段,手工记录对于规模小的学校来说勉强可以接受;但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的,而且当查找某条记录时,由于数据量庞大,只能依靠人工去一条一条地查找,这样不但麻烦而且浪费许多时间,工作效率比较低。采用宿舍管理系统来管理宿舍和学生的信息,大大提高了查询的速
13、度,节约了人力和物力资源,达到了预期的要求。为了实现提高宿舍管理部门的工作效率,充分利用资源,减少不必要的人力,物力和财力的支出,方便宿舍管理部门的工作人员全面地掌握学生住宿情况等目的,为宿舍管理部门,开发设计宿舍管理系统来进行管理学生宿舍信息。本课题主要是解决宿舍管理系统在日常中涉及到的一些信息处理问题,目标是使宿舍管理在后勤管理中实现信息化,快速化。第一章 相关技术介绍本系统采用面向对象的软件开发方法,以Microsoft公司的可视开发环境Visual Basic 6.0作为主要开发工具,使用SQL SERVER 2005作为关系数据库,配合功能强大的SQL查询语言实现建立关系数据库,访问
14、数据库,对数据库的更新,较好地实现了预定的需求功能。1.1 Visual Basic 6.0开发环境本软件的开发工具为VISUAL BASIC,作为一种开发语言,VISUAL BASIC率先采用了可视化(VISUAL)的程序设计方法。利用系统提供的大量可视化控件,可以方便的以可视化方式直接绘制用户图形界面,并可直观、动态的调整界面的风格和样式,直到满意为止,从而克服了以前必须用大量代码去描述界面元素的外观和位置的传统编程模式。它还拥有面向对象的编程方法。面向对象的程序设计是伴随WIDNOWS图形界面的诞生而产生的一种新的程序设计思想,与传统程序设计有着较大的区别,VISUAL BASIC采用了
15、面向对象的程序设计思想。所谓“对象”就是现实生活中的每个一人,每一个可见的实体。同样,在VISUAL BASIC中,用来构成用户图形界面的可视化控件,也可视为是一个对象。不同的对象,在程序中所赋给它的功能是不同的,比如,在图形界面上有两个命令按钮,一个用来实现数据的统计计算,另一个用来实现数据的打印,这两个按钮就可视为是两个不同的对象,为了实现这两个对象各自不同的功能,接下来就应该分别针对这两个对象编写程序代码,这种编程的思想和方法即为所谓的“面向对象的程序设计”。1.2 开发的必要性信息资源已成为各个部门的重要财富和资源,建立一个满足各级部门信息处理需要的信息系统,也一个企业或组织生存越来越
16、重要的信息资源。长期以来,使用传统人工的方法管理高校宿舍,这种管理方式存在着许多缺点,如:效率低。而且时间一长,将产生大量的文件和数据,这对于查找、更新、维护都带来了不少的困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥越来越重要的作用。学生宿舍管理软件,是以高校的管理方式为实例而设计的一种实用型管理软件。本系统最大的特点是通用性、简单操作性。随着学校寄宿人员的增多,宿舍管理人员的负担越来越重,为了让所有宿舍管理人员能从繁重的工作中解脱出来,实现无纸化办公,使工作更有条理、更方便、更有效率,而开发出这套宿舍管理软件。1.3 系统开
17、发的可行性我们正走进一个信息时代,信息技术将从根本上改变人类社会的生产方式和生活方式,各行各业的业务管理现在都已经相继使用计算机来处理,可以说用计算机进行信息管理是一个总趋势。学生宿舍管理软件主要是对学生信息、管理人员、学生住宿情况查询,修改,更新等。可以更快地了解到每个学生的住宿情况。开发一个学生宿舍管理系统可以达到事半功倍的效果。随着数据库管理系统的普及以及可视化编程软件的出现,使数据库管理信息系统的开发变得更为简单,因此开发一个学生宿舍管理系统是完全可行的。1.4 SQL查询语言及使用SQL语言是结构化语言(Structure Query Language)的缩写,是一种用于数据库查询和
18、编程的语言,已经成为关系型数据库普遍使用的标准,使用这种标准数据库语言对程序设计和数据库的维护都带来了极大的方便,广泛地应用于各种数据查询。VB中的数据库操作对象都提供了对SQL语句的支持。其一般的用法是以VB的各种控件接收用户对数据库访问的请求,在事件响应程序代码中将其转换成对数据库的SQL查询语句,并以字符串的形式存在,然后将其传递给相应的数据库操作对象,最终完成对数据库的访问。第二章 系统需求分析2.1 系统的初步调查经过实际分析调查,一个学生宿舍管理系统主要是要方便宿舍管理人员的工作,提高其工作效率,不仅可以方便广大学生,而且还可以方便于教师和相关人员。学生住在宿舍楼中,每幢宿舍楼都会
19、有若干名老师负责本宿舍楼的日常管理。学生的基本信息:入校时,每位同学都有唯一的学号,并被分配到指定的宿舍楼和指定的宿舍,也会有一个宿舍号,其入校时间就是他的入住时间。宿舍的基本信息:每间宿舍都有唯一的楼号和宿舍号,入校时,宿舍会装公用电话机,相应地就有宿舍电话号码。工作人员基本信息:每幢宿舍都有驻楼阿姨和保洁阿姨的编号。2.2 系统功能分析2.2.1系统功能分析本系统主要有以下功能:基本信息管理、住宿管理、服务管理。基本信息管理包括学生信息、宿舍信息、工作人员信息;数据库操作功能:查询、删除、修改、插入;2.2.2业务流程概述系统的业务是系统要达到的业务目标,业务流程分析是系统分析中的基础环节
20、。根据以上系统功能的分析,我们将学生宿舍管理业务分成基本信息管理、住宿管理、员工信息管理几个模块。宿舍信息管理:主要是记录宿舍的基本状况,可住人数,已住人数,电话号码,便于工作人员分配寝室以及联系。学生信息管理:宿舍的学生信息主要来自学生处提供的,对于已住进宿舍的学生,工作人员从学生处提取相关信息,进行统一管理,如果学生退房之后,相应的信息也将被删除。员工信息管理:记录在宿舍、楼管处工作的员工信息,及时增、删、改,便于有个统一的收集、管理、宿舍更好的运作。2.2.3数据流图数据流程图是全面描述信息系统逻辑模型的工具,它抽象概括地把信息系统中各种业务处理过程联系起来。根据以上的业务流程的分析,以
21、及学生宿舍的特点,我们给出了以下学生宿舍管理信息系统的数据流程图。图2.1 学生宿舍管理数据流图第三章 系统设计3.1 概念结构设计在数据库设计中,先要对系统分析所得的数据字典中的数据存储进行分析,然后得出系统的关系模式,可以采用ER图的方法进行数据结构的描述。ER图由实体、属性、联系三部分组成。学生宿舍员工宿舍楼入住n1组成m1管理1n宿舍号学号姓名性别员工号员工姓名专业年龄楼号联系方式职位联系方式可住人数已住人数图3.1 学生宿舍管理的E-R图3.2 逻辑结构设计3.2.1将E-R图转换为关系模型由于宿舍与学生是1:n关系,可以将其之间的联系与n端实体学生合并,宿舍和员工,学生和临时设备,
22、学生和来访者也是1:n关系,同样也将其之间的联系与n端实体员工,临时设备,来访者合并,具体的基本E-R图向关系模型的转化如下:学生住宿表:(学号,姓名,性别,专业,联系方式)宿舍表:(楼号,宿舍号,电话号码,可住人数,已住人数)员工表:(员工号,员工姓名,性别,职位,联系方式,楼号)设备租赁表:(设备号,设备名,租赁日期,归还日期,学号)3.2.2 逻辑结构定义由以上分析,得出上述4个表格结构如下:表3-1 学生信息表属性名类型长度备注学号char8住宿学生学号姓名Varchar10住宿学生姓名性别char2男/女专业Varchar20学生专业联系方式char11联系方式表3-2 员工表属性名
23、类型长度备注员工号char4员工姓名Varchar10年龄smallint2性别char2职位Varchar20联系方式char11表3-3 宿舍表属性名类型长度备注楼号char2宿舍号char3宿舍电话char12可住人数smallint2已住人数smallint2表3-4 设备租赁表属性名类型长度备注设备号char8设备名Varchar20租赁日期Datetime8所租的日期归还日期Datetime8归还设备日期学号Char8住宿学生学号3.2.3 数据库的建立图3.2 学生住宿表图3.3 员工表图3.4 设备租赁表3.3 物理结构设计数据库的物理设计就是为逻辑数据模型选取一个最合适应用要
24、求的物理结构的过程,在这个阶段中要完成两大任务:确定数据库的物理结构,在关系数据库中主要是存取方法和存储结构;对物理结构进行评价,评价的重点是时间和空间效率。第四章 应用程序开发4.1系统主界面在此系统中,考虑到人们的使用习惯,利用了菜单对系统中功能进行分类列举,通过菜单即能完成,这样使得主界面简洁,易于使用。另一方面,对当前使用的某一功能选项对应的窗口,以模式的方式进行工作,使得在同一窗口,仅能打开某一类功能的窗口,也在一定程度上减轻了用户的使用难度。系统的主界面如下:图4.1 学生宿舍管理系统主界面4.2 用户登录界面图4.2 学生宿舍管理系统登录界面其代码如下:Private Sub L
25、abel1_Click() Dim user As String Dim password As String user = Text1.Text password = Text2.Text If Text1.Text And Text2.Text Then Adodc1.ConnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=xueshengsushe;Data Source=XS07 Adodc1.RecordSource = se
26、lect 名称,密码 from 系统表 where 名称= & user & and 密码= & password & Adodc1.Refresh If Adodc1.Recordset.RecordCount 0 Then Form2.Hide Form1.Show Unload Me Else: MsgBox 用户名不存在或密码错误!, vbOKOnly + vbExclamation, 提示 Text1.Text = Text2.Text = Text1.SetFocus Text1.SetFocus End If Else MsgBox 用户名和密码不能为空!, vbOKOnly +
27、 vbExclamation, 提示 Text1.Text = Text2.Text = Text1.SetFocus Text1.SetFocus End IfEnd SubPrivate Sub Label2_Click()Unload MeEnd Sub4.3 用户管理界面4.3.1查询信息主界面图4.3 学生宿舍查询界面其主要代码如下:Private Sub Command1_Click()Adodc1.ConnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;
28、Initial Catalog=xueshengsushe;Data Source=XS07 Adodc1.RecordSource = select * from 设备租赁 where 学号= & Text1.Text & Set DataGrid1.DataSource = Adodc1 DataGrid1.RefreshEnd SubPrivate Sub Command2_Click()Unload MeEnd Sub4.3.2 添加学生信息界面图4.4 学生宿舍添加界面图4.5 学生宿舍删除界面其主要代码如下:Private Sub Command1_Click()Adodc1.Co
29、nnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=xueshengsushe;Data Source=XS07Adodc1.RecordSource = select * from 学生住宿表 where 学号= + Text1.Text + Adodc1.Refresh If Text1.Text = Or Text2.Text = Or Text3.Text = Or Text4.Text = Then MsgBox 输入不完整。
30、, , 提示信息 ElseIf Adodc1.Recordset.RecordCount = 0 Then Adodc1.RecordSource = select * from 学生宿舍表 where 学号= + Text1.Text + Adodc1.Recordset.AddNew Adodc1.Recordset.Fields(学号) = Text1.Text Adodc1.Recordset.Fields(姓名) = Text2.Text Adodc1.Recordset.Fields(专业) = Text3.Text Adodc1.Recordset.Fields(联系方式) =
31、Text4.Text MsgBox 添加成功!, vbOKOnly, 提示信息 Adodc1.Recordset.UpdateEnd If Exit SubEnd SubPrivate Sub Command2_Click()Unload MeEnd SubPrivate Sub Command3_Click()Adodc1.ConnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=学生宿舍;Data Source=XS07Adodc1.
32、RecordSource = select * from 学生住宿表 where 学号= + Text1.Text + Adodc1.RefreshAdodc1.Recordset.DeleteAdodc1.Recordset.Update Text1.Text = Text2.Text = Text3.Text = Text4.Text = Adodc1.Refresh MsgBox 删除成功, , 提示信息End Sub4.3.3修改信息界面图4.6 修改界面其代码如下:Private Sub Command1_Click()Dim a As String Dim b As String
33、Dim c As String a = Text1.Text b = Text2.Text c = Text3.Text Adodc1.ConnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=学生宿舍;Data Source=XS07 Adodc1.RecordSource = select * from 员工表 where 员工号= & a & or 员工姓名= & b & or 职位= & c & Set DataGrid1.Dat
34、aSource = Adodc1 DataGrid1.Refresh Exit SubEnd SubPrivate Sub Command2_Click()On Error GoTo errorhandler 允许错误发生 Adodc1.RecordSource = select * from 员工表 Adodc1.Refresh If Adodc1.Recordset.RecordCount = 0 Then MsgBox 无修改目标, vbOKOnly, 提示信息 Exit Sub End If Adodc1.RecordSource = select * from 员工表 where 员
35、工号= & Text1.Text & If Text1.Text = Or Text2.Text = Or Text3.Text = Then MsgBox 信息输入不完整!, vbOKOnly, 提示信息 Exit Sub End If Adodc1.Refresh Adodc1.Recordset.Fields(员工号) = Text1.Text Adodc1.Recordset.Fields(员工姓名) = Text2.Text Adodc1.Recordset.Fields(职位) = Text3.Text Adodc1.Recordset.Update MsgBox 修改成功!, v
36、bOKOnly, 提示信息Adodc1.RefreshExit Suberrorhandler: 允许错误发生的错误处理 If Err.Number = 3021 Then MsgBox 员工号不存在,不能更新。, vbOKOnly, 提示信息 resume next Exit Sub End If If Err.Number = -2147217900 Then MsgBox 员工姓名存在相关记录,不允许更新或删除。, vbOKOnly, 提示信息 Resume Next Exit Sub End If If Err.Number = -2147217904 Then MsgBox 职位输入
37、错误,请输入长整型, vbOKOnly, 提示信息 resume next Exit Sub End IfEnd SubPrivate Sub Command3_Click()Unload MeEnd Sub参 考 文 献1郑阿奇. SQL SERVER 实用教程M.北京:电子工业出版社.2009.2陈伟. SQL SERVER 2005 数据库应用与开发教程M.北京:清华大学出版社.2007.3刘卫国数据库技术与应用实践教程M.北京:机械工业出版社.2007.4周峰. SQL SERVER 2005 经典案例设计与实现M.北京:电子工业出版社.2006.5黄明.Visual Basic+SQL SERVER中小型信息系统M.北京:机械工业出版社.2007.