学生宿舍管理系统.docx
- 文档编号:30231592
- 上传时间:2023-08-07
- 格式:DOCX
- 页数:43
- 大小:749.24KB
学生宿舍管理系统.docx
《学生宿舍管理系统.docx》由会员分享,可在线阅读,更多相关《学生宿舍管理系统.docx(43页珍藏版)》请在冰豆网上搜索。
学生宿舍管理系统
重庆科技学院
课程设计任务书
设计题目:
学生宿舍管理系统
学生姓名
吴胜军
课程名称
数据库原理课程设计
专业班级
计科2007-01
地点
I524
起止时间
2010.1.4-2010.1.15
设计内容及要求
1.系统应对用户权限进行验证,有相应权限才能登录系统,系统角色主要有宿舍管理员和总管等。
2.因系统有多种角色可以登录,所以要可以管理所有用户的基本信息,而且可以设置系统角色和角色权限。
3.系统应该详细登记学生基本信息及学生住宿情况。
4.系统应提供用户修改个人信息和密码的功能。
5.系统应提供学生每学期的注册及学生的离校处理、学生调换宿舍管理。
6.系统应提供学生在校期间贵重物品出入宿舍楼的详细情况登记。
7.系统应记录所有宿舍的档次、位置和宿舍号。
8.系统应记录所有宿舍中公共物品的情况、学生住宿情况(学号、班级、姓名等)。
9.系统应提供查询功能,以方便用户对学生基本信息的查询(要实现按多种条件的查询)及楼房信息的查询。
10.系统还应具有增加、修改、删除、查询学生住宿的功能。
设计
参数
完成:
软件界面设计(界面要求全面,包括软件中的每一功能)
软件界面要求美工
数据库设计(要求作出数据库PDM图),并生成数据字典,所有表关系必须至少达到3NF.
作出软件模块图及函数调用
写出每个函数调用的测试用例
软件要求能运行,不出错(程序全部实现)
系统调用到少3个存储过程
系统至少调用3视图
系统表这少要有10个表(功能不足,可以自己根据需要增加功能)
系统中,至少要有3个以上的触发器。
进度
要求
19.1讲课阅读分析任务书制订设计计划
19.2-3需求分析概念结构设计
19.4-5概念结构设计准备文挡
20.1-3逻辑结构设计物理结构设计
20.4-5写文挡答辩交设计报告书
参考资料
1.雷亮等《数据库原理课程设计》指导书
2.王珊、萨师煊.《数据库系统概述》(第四版).北京:
高等教育出版社.2006。
3.C.J.Date著.孟小峰、王珊等译.《数据库系统导论》(第8版).北京:
机械工业出版社.2007。
4.陈根才等.数据库课程设计.浙江.浙江大学出版社.2007
其它
说明
1.本表应在每次实施前一周由负责教师填写二份,院系审批后交院系办备案,一份由负责教师留用。
2.若填写内容较多可另纸附后。
3.一题多名学生共用的,在设计内容、参数、要求等方面应有所区别。
教研室主任:
指导教师:
雷亮,裴仰军,张亚军
2009年12月25日
目录
1需求分析4
1.1编写目的4
1.2背景4
1.2.1软件系统名称4
1.2.2项目开发者4
1.2.3软件联系5
1.3数据流图5
2概念结构设计7
2.1实体图7
2.2实体关系图(E-R)8
3逻辑结构设计10
4物理结构设计11
4.1表的设计11
4.2表的数据字典13
4.3视图16
4.4存储过程17
4.5触发器18
5概要设计20
5.1基本设计概念20
5.2功能模块设计20
5.2.1功能模块图20
5.2.2功能说明21
5.3软件界面设计21
6函数调用及测试用例28
6.1函数调用28
6.2测试用例30
7总结33
1需求分析
1.1编写目的
根据调查,几乎每一所大中型学校都有几千上万的学生,其中在校住读的学生占全校学生总比例的百分之五十到百分之九十之间。
通过以上说明,这也导致了学生在校住宿的严重问题,一是宿舍的安排,二是学生的管理。
每在开校报名的时候,学生宿舍因为报名高峰期导致了分配缓慢,从而降低了分配效率,使得宿舍管理员忙不过来,而且有的时候还出现少数同学没有分到宿舍或者宿舍分配错误。
在平时工作日中,学生的宿舍调配,学生的贵重物品出入宿舍的登记,或者宿舍中公共物品的损坏补修等记录都是用纸张的方式记录的,保存的时间都不是很长,而且容易被毁坏,从而导致重要数据的丢失。
为了能够更好的管理学生宿舍,增加管理效率,降低数据的丢失性,减轻宿舍管理员的负担,编写一个学生宿舍管理系统是必要的。
本系统通过人机互动的方式来管理学生宿舍,主要的使用者是宿舍管理员或者后勤高层领导。
1.2背景
1.2.1软件系统名称
该软件系统的名称为学生宿舍管理系统。
1.2.2项目开发者
A.任务提出者:
重庆科技学院电子信息工程学院计算机教研室裴仰军老师、雷亮老师和张亚军老师。
B.项目开发者:
重亲科技学院电子信息工程学院计算机科学与技术应用本科07级。
C.软件用户:
宿舍管理老师、后勤老师或者后勤高层领导。
D.计算机中心:
学校计算机网络中心。
E.计算机网络:
本软件适合局域网。
1.2.3软件联系
该软件的数据库是建立在SQLSERVER2000的基础上的。
通过对数据的操作,实现学生宿舍的管理。
本系统的数据库保存在学校计算机网络中心,软件的操作可以在学校计算机网络中心,可以是宿舍管理员专用计算机。
1.3数据流图
根据以上分析,特做出第一层数据流图,如下所示:
图1.1
登录功能:
图1-2
注册功能:
图1.3
查询学生个人信息:
图1.4
记录宿舍公共物品信息:
图1.5
修改学生个人信息:
图1.6
2概念结构设计
2.1实体图
根据需求分析得知,此系统有三类实体,分别为物品、学生和管理员。
在管理员中又分普通管理员和总管理员。
这三类实体都有各自的属性及关系。
根据这些实体的属性可以生成实体图。
1)学生实体:
图2-1学生实体及属性
2)普通管理员:
图2-2普通管理员实体及属性
3)总管理员:
图2-3总管理员实体及属性
4)物品:
图2-4物品实体及属性
5)学生宿舍:
图2-5宿舍实体及属性
2.2实体关系图(E-R)
根据以上实体图可以生成初步E-R图。
a)学生住宿E-R图:
图2-6学生住宿的分E-R图
b)宿舍管理E-R图:
图2-7宿舍管理的分E-R图
c)学生管理E-R图:
图2-8学生管理E-R图
d)学生-物品E-R图:
图2-9学生-物品E-R图
e)学生宿舍管理系统的基本E-R图:
图2-10宿舍管理基本E-R图
3逻辑结构设计
逻辑结构设计的任务就是把概念结构设计阶段设计好的E-R图转换为与选用DBMS产品所支持的数据模型相符合的逻辑结构。
根据以上E-R图,可以转换为相应的关系模式,关系的码用下划线标出。
学生实体对应的关系模式为:
学生(学号,姓名,年龄,性别,专业,名族,籍贯,联系电话,家庭地址)
管理员实体对应的关系模式为:
管理员(职工号,姓名,年龄,名族,籍贯,联系电话,家庭地址)
宿舍实体对应的关系模式为:
宿舍(宿舍号,房间号)
学生住宿对应的关系模式为:
住宿(学号,房间号,姓名,年龄,性别,专业,名族,籍贯,联系电话,家庭地址)
宿舍管理对应的关系模式为:
管理(职工号,房间号,姓名,年龄,名族,籍贯,联系电话,家庭地址)
学生-物品对应的关系模式为:
拥有(物品名,学号,物品数量)
经过以上设计,通过PowerDesigner软件设计出PDM图,如下:
图3-1学生宿舍管理系统PDM图
4物理结构设计
4.1表的设计
本系统的数据库一共设计了十一个基本表,它们是登录信息表LoginInfo、学生个人信息表Student、学生个人信息备份表FlatPersonBackUp、宿舍管理员基本信息表FlatAdm、管理员基本信息备份表FlatMngInfoBackUp、宿舍公共物品基本信息表FlatPubGoods、公共物品损坏记录表Student_FlatPubGoods、出入宿舍贵重物品记录表PreciousGoods、宿舍信息表Flat、通知信息表Notification、学生离校信息登记表StuLeaveSchool。
登陆信息表LoginInfo是记录管理员登陆信息的表,其中包括登陆账号、登录密码和管理权限。
具体如下表:
表4-1登陆信息表
学生个人信息表Student是记录学生个人基本信息的表,其中包括学生学号、学生住宿房间号和其他学生的个人基本信息。
具体如下表:
表4-2学生个人信息表
学生个人信息备份表FlatPersonBackUp也是记录学生的个人基本信息的表。
只是和Student表不同的是本表中的信息不能被删除,只能查询和修改,而Student表中的信息可以被查询、修改和删除。
FlatPersonBackUp表的具体定义如下:
表4-3学生个人信息备份表
宿舍管理员基本信息表FlatAdm是记录宿舍管理员个人信息的表,其中包括管理员的职工号、管理区域、姓名和联系电话等。
具体定义如下表:
表4-4宿舍管理员基本信息表
管理员基本信息备份表FlatMngInfoBackUp和表FlatAdm一样是记录宿舍管理员的个人信息,两表不同的是表FlatMngInfoBackUp中的信息不能被删除,只能被查看和修改,而表FlatAdm中的信息可以被查看、修改和删除。
具体定义如下表:
表4-5宿舍管理员基本信息备份表
宿舍公共物品基本信息表FlatPubGoods是记录宿舍公共物品信息的表,其中包括物品名称、物品数量和寝室号等。
具体如下表:
表4-6宿舍公共物品基本信息表
公共物品损坏记录表Student_FlatPubGoods是当宿舍公共物品被损坏时,把损坏人的学号、被损坏物品名称以及赔偿金额等信息记录到此表中,以方便以后查阅。
具体定义如下表:
表4-7公共物品损坏记录表
出入宿舍贵重物品记录表PreciousGoods是当有学生携带着贵重物品出入学生宿舍大门时,记录贵重物品信息的基本表,其中包括携带人学号、物品名和当前时间等。
具体定义如下表:
表4-8出入宿舍贵重物品记录表
宿舍信息表Flat是记录学生宿舍信息的基本表,其中包括宿舍号和房间号。
具体定义如下表:
表4-9宿舍信息表
通知信息表Notification是记录通知信息的表,其中包括通知信息、发布通知的人员与发布通知的时间等信息。
具体定义如下表:
表4-10通知信息表
学生离校信息登记表StuLeaveSchool是记录学生离校的验证信息的基本表。
当学生返校或离校时,要到宿舍管理员处报道并进行登记,将返校或离校的时间记录下来。
具体定义如下表:
表4-11学生离校信息登记表
4.2表的数据字典
Ø表格住宿学生信息备份表的列清单
名称
代码
注释
数据类型
长度
学号
StuNumber
学生在校专用学号
varchar(10)
10
房间号
FlatRoomNumber
学生在校住宿的房间号
varchar(6)
6
姓名
StuName
学生的姓名
varchar(15)
15
年龄
StuAge
学生的年龄大小
smallint
专业
StuSdept
学生在校所属专业
varchar(30)
30
籍贯
StuBirthPlace
学生所属籍贯
varchar(10)
10
名族
StuNationj
学生所属名族
varchar(10)
10
联系电话
StuTel
能联系到学生的电话号码
varchar(13)
13
家庭地址
StuAddr
学生家庭所在地
varchar(50)
50
表4-12
Ø表格学生的列清单
名称
代码
注释
数据类型
长度
学号
StudentNumber
学生在校学号
varchar(10)
10
房间号
FlatRoomNumber
学生在校住宿房间号
varchar(6)
6
姓名
StudentName
学生的姓名
varchar(15)
15
年龄
StudentAge
学生的年龄大小
smallint
专业
StudentSdept
学生在校所属专业
varchar(30)
30
籍贯
StudentBirthPlace
学生所属籍贯
varchar(10)
10
名族
StudentNation
学生所属名族
varchar(10)
10
联系电话
StudentTel
能联系到学生的电话号码
varchar(13)
13
家庭地址
StudentAddr
学生家庭所在地
varchar(50)
50
表4-13
Ø表格宿舍的列清单
名称
代码
注释
数据类型
长度
宿舍号
FlatNumber
宿舍所在的宿舍区域号
varchar
(2)
2
房间号
FlatRoomNumber
宿舍房间所在的房间号
varchar(6)
6
表4-14
Ø表格宿舍公共物品的列清单
名称
代码
注释
数据类型
长度
物品名
FlatGoodsName
宿舍的公共物品名称
varchar(20)
20
房间号
FlatRoomNumber
宿舍的房间号
varchar(6)
6
物品数量
FlatGoodsCount
公共物品的数量
int
新旧情况
NOComment
说明公共物品的新旧情况,相当于一个物品说明备注
varchar(50)
50
是否损坏
IsBroken
说明该公共物品是否损坏。
当值为1时为损坏,为0是没有损坏
binary
(1)
1
表4-15
Ø表格宿舍管理员的列清单
名称
代码
注释
数据类型
长度
职工号
FANumber
宿舍管理员的职工号
varchar(10)
10
房间号
FlatRoomNumber
宿舍管理员所管辖的宿舍区域号
varchar(6)
6
姓名
FAName
宿舍管理员的姓名
varchar(15)
15
年龄
FAAge
宿舍管理员的年龄大小
smallint
籍贯
FABirthPlace
宿舍管理员所属籍贯
varchar(10)
10
名族
FANation
宿舍管理员所属名族
varchar(10)
10
家庭地址
FAAddr
宿舍管理员家庭所在地
varchar(30)
30
联系电话
FATel
能随时联系到宿舍管理员的电话号码
varchar(13)
13
表4-16
Ø表格宿舍管理员信息备份表的列清单
名称
代码
注释
数据类型
长度
职工号
WorkerNumber
宿舍管理员的职工号
varchar(10)
10
房间号
RoomNumber
宿舍管理员所管辖的宿舍区域号
varchar(6)
6
姓名
WorkerName
宿舍管理员的姓名
varchar(15)
15
年龄
WorkerAge
宿舍管理员的年龄大小
smallint
籍贯
WorkerBirthPlace
宿舍管理员所属籍贯
varchar(10)
10
名族
WorkerNation
宿舍管理员所属名族
varchar(10)
10
家庭地址
WorkerAddr
宿舍管理员家庭所在地
varchar(30)
30
联系电话
WorkerTel
能随时联系得到宿舍管理员的电话号码
varchar(13)
13
表4-17
Ø表格损坏的列清单
名称
代码
注释
数据类型
长度
学号
StudentNumber
损坏公共物品的学生的学号
varchar(10)
10
物品名
FlatGoodsName
被损坏公共物品的名称
varchar(20)
20
房间号
FlatRoomNumber
被损坏公共物品所在宿舍房间号
varchar(6)
6
是否赔偿
IsPay
说明该学生是否进行了赔偿,当值为1时说明该学生已经赔偿了款项,为0时没有赔偿款项
bit
赔偿金额
PayPrice
学生赔偿款项金额大小
money
表4-18
Ø表格登陆信息表的列清单
名称
代码
注释
数据类型
长度
职工号
FANumber
宿舍管理员登录系统时的用户ID
varchar(10)
10
密码
UserPwd
宿舍管理员登录系统时的密码
varchar(20)
20
辨别身份标识
IsSup
辨别当前登录系统的宿舍管理员的身份。
当值为1时就是总管理员,值为0时为普通管理员
bit
表4-19
Ø表格离校验证表的列清单
名称
代码
注释
数据类型
长度
学号
StudentNumber
学生在校所属学号
varchar(10)
10
学年
Yr
当前学年
varchar(10)
10
学期
Term
当前学期
smallint
回校时间
BSTime
学生回校时到宿舍管理员处报道的时间
varchar(20)
20
离校时间
LSTime
学生离校时到宿舍管理员处报道的时间
varchar(20)
20
次数
Times
学生在该学年该学期内离校或返校的次数
smallint
表4-20
Ø表格贵重物品的列清单
名称
代码
注释
数据类型
长度
物品名
GoodsName
出入宿舍大门时学生所携带的物品名称
varchar(20)
20
物品数量
GoodsCount
物品的数量
int
出入时间
OITime
出入宿舍大门时的当前时间
varchar(20)
20
学号
StudentNumber
出入宿舍大门的学生的学号
varchar(10)
10
表4-21
Ø表格通知的列清单
名称
代码
注释
数据类型
长度
通知人员
NPerson
发布通知消息的管理员名称
varchar(20)
20
通知消息
NMsg
通知的具体内容
varchar(100)
100
通知时间
NTime
发布通知的时间
datetime
是否最新
IsNew
说明该通知消息是否是最新消息。
当值为1时为最新消息,为0时为旧消息
bit
表4-22
4.3视图
视图是从一个或几个基本表或视图导出的表。
它与基本表不同,是一个虚表。
数据库中只存放视图的定义,而不存放视图对应的数据,这些数据仍存放在原来的基本表中。
所以基本表中的数据发生变化时,从视图中查询出的数据也就随之改变了。
视图一经定义,就可以和基本表一样被查询、被删除。
也可以在一个视图之上再定义新的视图,但对视图的更新(增、删、改)操作则有一定的限制。
本系统的数据库中有三个视图。
这些视图都是从基本表中导出的。
第一个视图名称为StuInfo,其定义如下:
createviewStuInfo
as
select*
fromStudent
在本软件中,有一项功能是查询学生的个人信息,视图StuInfo的产生就是为了方便查询学生的个人信息而定义的。
第二个视图名称为Notice,其定义如下:
createviewNotice
as
select*
fromNotification
视图Notice就是为了方便查询通知信息而定义的。
在本系统中,总管理员可以通过发布通知信息通知普通管理员,而普通管理员则可以通过视图Notice查看总管理员所发布的通知信息。
第三个视图名称为Adm_Name,其定义如下:
createviewAdm_Name(AdmNumber,AdmName)
as
selectFANumber,FAName
fromFlatAdm
视图Adm_Name的定义就是为了方便从管理员基本信息表中获得当前登陆系统的管理员姓名,从而可以在管理员窗口界面的标题栏上显示出当前正在使用系统的管理员姓名。
4.4存储过程
存储过程是有PL/SQL语句书写的过程,这个过程经编译和优化后存储在数据库服务器中,因此称它为存储过程,使用时只要调用即可。
使用存储过程可以提高运行效率,它提供了在服务器端快速执行SQL语句的有效途径,降低了客户机和服务器之间的通信量,而且还方便实施企业规划。
本系统在数据库中定义了四个存储过程,其中有两个是修改功能,一个是删除功能,一个是插入功能。
第一个存储过程名为AlterPerInfo,其定义如下:
createprocedureAlterPerInfo(@StuNovarchar(10),@FlatNumbervarchar(6))
as
begin
updateStudentsetFlatRoomNumber=@FlatNumberwhereStudentNumber=@StuNo
end
该存储过程的功能是修改学生的住宿信息。
当学生所住的宿舍改变时,可以通过调用此存储过程来改变学生基本信息表中的FlatRoomNumber。
第二个存储过程名称为AlterPwd,其定义如下:
createprocedureAlterPwd(@UserIdvarchar(10),@OldPwdvarchar(20),@NewPwdvarchar(20))
as
begin
updateLoginInfosetUserPwd=@NewPwdwhereFANumber=@UserIdandUserPwd=@OldPwd
end
该存储过程的定义是为了方便修改宿舍管理员的密码。
宿舍管理员登陆系统的初始密码就是他们的职工号,在他们第一次登陆系统的时候必须要修改他们的初始密码,以防被人盗用。
第三个存储过程名称为DeleteInfo,其定义如下:
createprocedureDeleteInfo(@StuNovarchar(10))
as
begin
deletefromPreciousGoodswhereStudentNumber=@Stu
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生宿舍 管理 系统
![提示](https://static.bdocx.com/images/bang_tan.gif)