数据库课程设计
题 目 宿舍信息管理系统
班 级 09级计科3班
指导教师
李必云
2012年 10 月
吉首大学信息科学与工程学院
--
--
项目分工
--
--
摘要
宿舍系统对于一个学校来说是必不可少的组成部分。目前好多学校还停留在宿舍管理人员手工记录数据的最初阶段,手工记录对于规模小的学校来说还勉强可以接受,但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的。而且当查找某条记录时,由于数据量庞大,还只能靠人工去一条条的查找,这样不但麻烦还浪费了许多时间,效率也比较低。当今社会是飞速进步的世界,原始的记录方式已经被社会所淘汰了,计算机化管理正是适应时代的产物。信息世界永远不会是一个平静的世界,当一种技术不能满足需求时,就会有新的技术诞生并取代旧技术.
21世纪的今天,信息社会占着主流地位,计算机在各行各业中的运用已经得到普及,自动化、信息化的管理越来越广泛应用于各个领域。我们针对如此,设计了一套学生宿舍管理系统。学生宿舍管理系统采用的是计算机化管理,系统做的尽量人性化,使用者会感到操作非常方便,管理人员需要做的就是将数据输入到系统的数据库中去。由于数据库存储容量相当大,而且比较稳定,适合较长时间的保存,也不容易丢失。这无疑是为信息存储量比较大的学校提供了一个方便、快捷的操作方式.本系统具有运行速度快、安全性高、稳定性好的优点,并且具备修改功能,能够快速的查询学校所需的住宿信息。
--
--
目录
第一章 前言ﻩ错误!未定义书签。
第二章 需求分析ﻩ错误!未定义书签。
2。1 调查用户需求 ............................................................................. 错误!未定义书签。
2.2功能的设计和划分ﻩ错误!未定义书签。
2.3数据流图ﻩ错误!未定义书签。
2.4 数据字典ﻩ错误!未定义书签。
第三章 系统概要设计ﻩ错误!未定义书签。
第四章 系统实现ﻩ错误!未定义书签。
4.1系统界面设计 .................................................................................. 错误!未定义书签。
4.2 关键代码 .......................................................................................... 错误!未定义书签。
第五章ﻩ总结 ..................................................................................................... 错误!未定义书签。
--
--
第一章 前言
随着时代的发展,计算机技术越来越深入各行各业,为广大的用户提供了更为周到和便捷的服务。目前各行各业广泛使用专用系统,其内容范围跨越了教育科研、文化事业、金融、商业、新闻出版、娱乐、体育等各个领域,其用户群十分庞大,因此,设计开发好一个专用系统对一个机构(或部门)的发展十分重要。近年来,随着用户要求的不断提高及计算机科学的迅速发展,特别是数据库技术的广泛应用,向用户提供的服务将越来越丰富,越来越人性化.
对于学校而言,学生宿舍管理是必不可少的组成部分。目前仍然存在有学校停留在宿舍管理部门人员手工记录数据的阶段,手工记录对于规模小的学校来说勉强可以接受;但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的,而且当查找某条记录时,由于数据量庞大,只能依靠人工去一条一条地查找,这样不但麻烦而且浪费许多时间,工作效率比较低。
为了实现提高高校宿舍管理部门的工作效率;充分利用资源;减少不必要的人力,物力和财力的支出;方便宿舍管理部门的工作人员全面地掌握学生住宿情况等目的;为宿舍管理部门,开发设计专用系统--高校学生宿舍信息管理系统来进行管理学生宿舍信息,使学生宿舍信息实现标准化的管理和规范化的制度是十分必要的。专用系统是一个学生宿舍信息管理系统 (以下就称信息管理系统),它将实现检索迅速和查找方便;信息的录入,修改和删除功能;以及对新入校学生进行宿舍安排等功能。 ﻬ
第二章 需求分析
2。1 调查用户需求
本系统的最终用户为宿舍楼管理员,本宿舍楼的学生.根据我们日常生活中的经验,结合对自己学校宿舍楼管理老师的咨询和对同宿舍楼同学的调查,得出用户的下列实际要求:
学生住在宿舍楼中,每栋宿舍楼都会有若干名老师负责本宿舍楼的日常管理。
(1) 学生的基本信息
入校时,每位同学都有唯一的学号,并被分配到指定的宿舍楼和指定的宿舍,也会有一
--
--
个宿舍号,其入校时间就是他的入住时间.另外,为了管理上的方便,同一院系的学生的宿舍一般在一起,相应地会有其所在的院系名称。
(2)宿舍财产的基本信息 每个宿舍的财产属于学校,比如电灯,床铺,柜子,桌椅等,为了对不同的财产进行区分,可以为每种财产分配不同的财产号。这样有利于财产的报修和管理。
(3)报修的基本信息
宿舍楼中经常出现财产的损坏,比如灯泡坏了,厕所的马桶出故障了等,这时,同学们需要将财产损坏情况报告给宿舍楼管理员,以便学校派人进行维修。这时,需要记录报修的宿舍号和损坏的财产编号,同时记录报修的时间和损坏的原因.当损坏的财产维修完毕后,应记录解决时间,表示该报修成功解决。
(4)违规的基本信息 宿舍楼在指定的时间关门(比如晚上12点),若有同学晚于关门时间会宿舍,需通知宿舍楼管理员,同时应登记晚归学生姓名,宿舍号,时间和晚归原因,以利于学校的管理和查证。
1、 用户对系统的要求 一、宿舍楼管理员:
a.信息要求:
宿舍楼管理员能查询上面提到的宿舍楼的所有相关信息,包括某一学号的学生在宿舍楼中住宿的详细信息,报修的所有信息,违规的详细信息。以利于对整个宿舍楼的全面管理.
b。处理要求:
当学生基本信息发生变化时,宿舍楼管理员能对其进行修改。比如,某些同学搬到其他的宿舍中去,他们在本宿舍楼中相应的记录就应该删去;或者学生转换专业,他们记录中院系的信息也要作相应的修改等等。
当宿舍财产报修及时解决后,管理员应登记解决时间,表明该报修问题已成功解决。
c.安全性与完整性要求:
安全性要求:
1.系统应设置访问用户的标识以鉴别是否是合法用户,并要求合法用户设置其密码,保证用户身份不被盗用;
2.系统应对不同的数据设置不同的访问级别,访问用户可查询和处理数据的类别和内容;
3.系统应对不同用户设置不同的权限,区分不同的用户,如区分普通用户(学生),管理员.
完整性要求:
1。各种信息记录的完整性,信息记录内容不能为空; 2.各种数据间相互的联系的正确性; 3.相同的数据在不同记录中的一致性。
--
--
2.2功能的设计和划分
根据如上得到的用户需求,我们设计了如下功能: 1. 管理员的注册与登录 2. 宿舍楼的管理 3. 学生信息的管理 4. 报修的管理 5. 违规的管理
2。3数据流图
报修管理的数据流图
报修反馈反馈信息报修登记表报修信息反馈信息报修信息管理员报修信息登记报修报修信息查询报修报修信息
违规管理数据流图
--
--
违规登记表违规信息违规信息处理意见登记已登记信息查询录入违规信息违规信息处理意见管理员
学生信息管理数据流图
学生信息录入学生信息表学生信息表管理员学生信息查询学生信息
宿舍楼管理数据流图
--
--
宿舍信息录入宿舍信息宿舍信息表已录入信息管理员宿舍信息宿舍信息查询
2.4 数据字典
数据库名:Virgo
表名:DB_BuildInfo
序号 列名 数据类型 长度 小数位 标识 主键 外键 允许空 1 buildId 2 buildArea 3 buildNo 4 buildMsg char 4 0 否 int 4 0 否 varchar 10 0 否 int 4 0 是 是 否 默认值 说明 表名:DB_DormDes
序号 列名 数据类型 长度 小数位 标识 主键 外键 允许空 1 2 msgId buildArea 3 buildNo 4 dormNo 5 fouldateti8 3 否 int 4 0 否 int 4 0 否 int varchar 4 10 0 0 是 是 否 否 默认值 说明 sTime me --
--
6 dormMsg 7 dormResult text 16 0 是 text 16 0 否 表名:DB_DormInfo
序号 列名 数据类型 长度 小数位 标识 主键 外键 允许空 1 dormId 2 buildArea 3 4 buildNo int dormNo 5 6 bedNum dormElse int text 4 16 0 0 否 是 int 4 4 0 0 否 否 varchar 10 0 否 int 4 0 是 是 否 默认值 说明 表名:DB_DormRegister
序号 列名 数据类型 长度 小数位 标识 主键 外键 允许空 1 2 stuNo char buildArea 3 buildNo 4 dormNo int 4 0 否 int 4 0 否 varchar 9 10 0 0 是 否 否 默认值 说明 表名:DB_DormRepair
序号 列名 数据类型 长度 小数位 标识 主键 外键 允许空 1 repairId 2 buildArea 3 buildNint 4 0 否 varchar 10 0 否 int 4 0 是 是 否 默认值 说明 --
--
o 4 5 dormNo RepairTime 6 dormJob 7 repairResult text 16 0 是 text 16 0 否 int datetime 4 8 0 3 否 否 表名:DB_ManageInfo
序号 列名 数据类型 长度 小数位 标识 主键 外键 允许空 1 2 3 4 loginId loginNo int varchar 4 10 0 0 0 0 是 是 否 否 否 否 默认值 说明 loginPwd varchar 13 loginType varchar 10 表名:DB_StuInfo
序号 列名 数据类型 长度 小数位 标识 主键 外键 允许空 1 2 3 4 stuNo char 13 10 2 8 0 0 0 3 是 否 否 否 否 默认值 说明 stuName varchar stuSex stuTime char datetime varchar 5 stuDepart 18 0 否 6 7 stuPro stuElse varchar text 18 16 0 0 否 是 表名:DB_SubInfo
序号 列名 数据类型 长度 小数位 标识 主键 外键 允许空 1 2 subNo int 4 18 0 0 是 是 否 否 默认值 说明 subDepart varchar --
--
3 4 subPro varchar subCode char 18 8 0 0 否 否
第三章 ﻬ系统概要设计
本部分的总目标是根据需求分析说明书设计ER图:
宿舍楼 描述 区域 Id 编号 备注 宿舍 宿舍楼号 床位 Id 区域 Id 报修 宿舍号 区域 宿舍楼号 报修原因 处理结果
--
--
宿舍号 备注 学号 学生 专业 姓名 性别 注册时间 系 管理员 账号 密码 Id 登录方式 专业 系 专业名称 Id 码
--
--
第四章 系统实现
4.1系统界面设计
登录界面
管理界面
--
--
管理员注册
宿舍楼管理
宿舍管理
--
--
学生信息
学生信息登记
--
--
入住登记
--
--
报修登记
维修反馈
违规登记
--
--
违规处理意见发布
--
--
4。2 关键代码
DBHelper.cs 数据访问
程序通过此类来对数据库的数据进行增、删、改、查。
using System;
using System。Collections.Generic; using System.Linq; using System.Text;
using System。Data;
using System。Data。SqlClient; using System。Windows。Forms;
namespace VirgoMis {
/// /// 此类维护数据库连接字符串和Connection对象 /// 〈/summary> class DBHelper {
private static SqlCommand cmd = null; private static SqlDataReader dr = null;
//数据库连接字符串
private static string connectionString = ”Server = 127.0.0.1; Database = Virgo; Trusted_Connection=True";
//数据库连接Connection对象
public static SqlConnection connection = new SqlConnection(connectionString);
public DBHelper() { }
#region 返回结果集
public static SqlDataReader GetResult(string sql) {
try {
cmd = new SqlCommand();
--
--
cmd.CommandText = sql;
cmd.Connection = connection; cmd.Connection。Open(); dr = cmd.ExecuteReader(); return dr; }
catch (Exception ex) {
MessageBox。Show(ex.Message); return null; }
finally {
//dr。Close();
//cmd.Connection.Close(); } }
#endregion
#region 对Select语句,返回int型结果集
public static int GetSqlResult(string sql) {
try {
cmd = new SqlCommand(); cmd.CommandText = sql;
cmd。Connection = connection; cmd.Connection.Open();
int a = (int)cmd.ExecuteScalar(); return a; }
catch (Exception ex) {
MessageBox.Show(ex。Message); return -1; }
finally {
cmd.Connection.Close(); } }
--
--
#endregion
#region 对Update,Insert和Delete语句,返回该命令所影响的行数
public static int GetDsqlResult(string sql) {
try {
}
} }
cmd = new SqlCommand(); cmd。CommandText = sql; cmd。Connection = connection; cmd.Connection.Open(); cmd。ExecuteNonQuery(); return 1; }
catch (Exception ex) {
MessageBox。Show(ex.Message); return -1; }
finally {
cmd.Connection.Close(); } endregion --
#--
第五章 总结
历时一周的课程设计现在已经接近尾声了,回想起这一周的日子,感觉收获颇多。我们这次课程设计是开发一个高校学生宿舍管理系统,它用到的开发工具是C#语言,SQL数据库。在设计的开始阶段为了尽快熟悉C#语言,我详细翻阅有关该方面的资料,对书中的基本理论知识逐章逐节地分析,同时还用上机操作来加深理解。特别是对书中的一些典型实例,认真学习它的编程思想,吸取它的编程技巧,弄懂程序中每句话的含义.在对所要应用的技术有了一个基本认识之后,就开始构思自己的系统设计.根据用户需求分析将整个系统分为几个模块,每个模块具体又要实现哪些功能,然后就逐个模块去一一详细设计,设计的过程中不时地翻阅资料,用一些巧妙的技术来优化程序。很遗憾的是由于时间的不充足,现在的项目还是个半成品,虽大部分的功能已经实现,但是还是有很多的功能还没实现和完善。我认为宿舍信息管理系统将会是以后信息化管理中,不可缺失的一部分。这是一个很有意义的项目值得我们以后再花时间来研究.
总之,通过一周的课程设计,让我感受了软件开发的整个过程。课程设计不仅是对我在大学所学知识的一个综合运用,也是一次增长知识和经验的好机会,同时也使我学会了许多处理、解决问题的方法,大大提高了自己的动手能力,为即将走上工作岗位打下了良好的基础。在开发的过程中团队的协作也是十分重要的,每一个组员都是不可缺失的。任何一个环节的纰漏就会影响到这个项目。只有大家团结一致,各取所长才能高质高效的完成项目。知识的补缺也是重要的一个环节,人不可能有面面俱到的知识,在开发过程中我们遇到了很多很多的困难.通过书籍和互联网,我们弥补了缺失的知识,这也使我们进一步的成长。
参考文献:
[1] 刘甲耀、严桂兰。 C#程序设计教程。电子工业出版社, 2007 [2] 张海藩.软件工程导论(第五版).清华大学出版社,
--
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- xiaozhentang.com 版权所有 湘ICP备2023022495号-4
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务