ImageVerifierCode 换一换
格式:DOC , 页数:21 ,大小:374.22KB ,
资源ID:10840879      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-10840879.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据库课设-学生公寓管理系统.doc)为本站会员(精品资料)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

数据库课设-学生公寓管理系统.doc

1、数据库课程设计题目: 学生公寓管理系统 学院: 信息科学与技术学院 专业: 信息与计算科学 姓名: 雷帅 徐爱娟 学号: 0目录一 引言 11.1 课题背景 11.2 课程设计目的 11.3 课程设计任务 1二 需求分析 1三 系统数据库设计 43.1 概念结构设计.43.2 逻辑结构设计.73.3 物理结构设计.8四 数据库实现.10五 数据库运行与查询15六 人员分工 17六 谢辞17参考文献17101 引言1.1 课题背景目前,校园内的学生住宿已经逐步开始进行公寓化管理。在管理过程中,入住学生信息、来访登记等各种信息内容复杂、数据量大,传统的手工记录方式很难完成快速、准确的查询、统计等管

2、理工作。开发学生公寓管理系统,利用计算机实现管理的信息化,不仅可以节省人力、物力资源,提高管理人员的工作效率,同时也加强了信息的安全性和可靠性。1.2 课程设计目的(1)通过实践更加深入理解所学数据库理论,通过实际操作巩固所学知识。(2)熟练掌握对于给定结构的数据库的创建、基本操作、程序系统的建立和调试以及系统评价。(3)实践和巩固在课堂教学中学习的关于关系数据库原理的有关知识和数据库系统的建立方法,熟练掌握对于给定实际问题,为了建立一个关系数据库信息管理系统,必须得经过系统调研、需求分析、概念设计、逻辑设计、物理设计、系统调试、维护以及系统评价的一般过程,为毕业设计以及将来的系统开发打下基础

3、。1.3 课程设计任务本课程设计任务是通过开发一个数据库特价机票抢购系统,深入学习和理解数据库系统的设计与开发, 开发工具为 SQL 相关软件。通过对计算机硬件和软件解决方案的论证,对应用领域进行调查分析,参考各种资料和进行数据库系统开发实践。在指导老师的帮助下,已经基本上成功地实现了设计任务书的要求,使得设计的数据库系统能够实现一般数据库的管理和查询功能等。12 需求分析本系统的用户是学生公寓管理人员和负责老师,他们在日常公寓管理的主要主要工作有:入住学生信息的查询与管理、寝室分配及调整、来访登记等。根据上述需求进行分析,本系统在实现上应该具有如下功能: 学生基本信息管理,包括学生姓名、学号

4、、所属院系班级、公寓楼号、寝室号等数据。 寝室使用情况统计,例如房源使用情况、空床统计情况等。 学生每学期的注册登记,以及住宿费、电费等缴纳情况管理。 人员来访登记及结束访问的详细记录。 提供多条件查询功能,以及方便用户对学生基本信息及楼房信息的查询。 添加、删除、修改用户账户的功能。根据上述分析,可以设计出此系统的系统体系结构图学生公寓管理系统系 统 管 理学 生 管 理公寓 管 理来访登记管理学生基本信息管理学生缴费管理公寓楼房管理公寓寝室管理2学生公寓管理系统功能模块示意图重试否失败 失败成功 用户管理模块 学生公寓管理模块系统流程分析图公寓楼管理信息学生信息管理缴费管理来访登记管理管理

5、自己的用户信息管理自己的用户信息管理普通用户的用户信息针对各模块功能不同的表实现添加记录、修改记录、删除记录以及查询显示记录等功能开始用户登录 失败超过 3次退出程序读取用户类型33 系统数据库设计3.1 概念结构设计根据需求分析抽象出信息结构,可得该系统的 E-R 图。(1)学生信息的 E-R 图,如图 3.1 所示。图 3.1 学生信息 E-R 图(2)公寓信息的 E-R 图,如图 3.2 所示。图 3.2 公寓信息 E-R 图学生学号姓名 性别出生日期专业寝室号班级联系方式公寓号公寓公寓号房间数楼层数启用时间4(3)寝室信息的 E-R 图,如图 3.3 所示。图 3.3 寝室信息 E-R

6、 图(4) 交费信息的 E-R 图,如图 3.4 所示。图 3.4 交费信息 E-R 图(5)来访信息的 E-R 图,如图 3.5 所示。寝室可住人数寝室号住宿费用电话公寓号交费寝室号交费时间交费管理公寓号 金额来访信息被访人姓名所属关系人数来访人姓名事由来访时间结束访问值班人5图 3.5 来访信息 E-R 图 (6)操作员信息的 E-R 图,如图 3.6 所示。图 3.6 操作员信息 E-R 图(7)根据分 E-R 图和需求分析,可得总的基本 E-R 图,我又通过分析实际情况,对总的 ER 图继续进行优化,消除不必要的冗余以及我认为一些不必要的信息后得到最终总的 E-R 图,如图 3.7 所

7、示1 1 nn1n 1n 11操作员操作员姓名操作员 ID密码权限学生 住在 公寓 进行 交费住在属于 进行寝室联系方式班级专业出生日期性别姓名学号启用时间房间数 楼层数公寓号交费时间交费管理金额寝室号可住人数 住宿费用电话6图 3.7 系统总体结构 E-R 图32 逻辑结构设计(1) 将图 3.7 总体概念结构 E-R 图转化成关系模型。关系模型:学生(学号,id,姓名,性别,出生日期,专业,班级,联系方式,公寓号,寝室号)公寓(公寓号,id,楼层数,房间数,启用时间)寝室(寝室号,公寓号,id,可住人数,住宿费用,电话)交费(id,公寓号,寝室号,交费时间,交费类型,金额)来访(id,来访

8、人姓名,人数,被访者姓名,所属关系,来访时间,结束时间,事由)操作员(操作员 ID,操作员姓名,密码,权限)(2)数据模型的优化将转化的关系模式进行优化,最终达到 BCNF。 确定数据依赖学生(学号,id,姓名,性别,出生日期,专业,班级,联系方式,公寓号,寝室号)学号 id ,学号 姓名,学号 性别 ,学号 出生日期 学号 专业,学号 班级,学号 联系方式,学号 公寓号学号 寝室号(均为完全函数依赖)公寓(公寓号,id,楼层数,房间数,启用时间)公寓号 id,公寓号 楼层数,公寓号 房间数公寓号 启用时间(均为完全函数依赖)寝室(寝室号,公寓号,id,可住人数,住宿费用,电话)由于不同的公寓

9、楼会有相同的寝室号,所以仅仅用寝室号是无法确定一个寝室的,而一个公寓楼里的寝室号是唯一的,所以这里用公寓号和寝室号一起作主键(寝室号,公寓号) id, (寝室号,公寓号) 可住人数, (寝室号,7公寓号) 住宿费用, (寝室号,公寓号) 电话(均为完全函数依赖)交费(id,公寓号,寝室号,交费时间,交费类型,金额)Id 公寓号 id 寝室号,id 交费时间id 交费类型,id 金额(均为完全函数依赖)来访(id,来访人姓名,人数,被访者姓名,所属关系,来访时间,结束时间,事由)id 来访人姓名,id 人数,id 被访者姓名,id 所属关系id 来访时间, id 结束时间,id 事由(均为完全函

10、数依赖)操作员(操作员 ID,操作员姓名,密码,权限)操作员 ID 操作员姓名,操作员 ID 密码,操作员 ID 权限(均为完全函数依赖)对各关系模式间数据依赖进行极小化处理,消除冗余通过分析发现其关系中都没有数据的冗余:学生关系中学号 Sno 决定公寓号和寝室号,公寓关系中公寓号作为主键,而寝室关系中,虽然寝室是在公寓里的,但是这里的寝室实体是指所有学生公寓里的寝室,所以仅仅是寝室号无法唯一的确定一个寝室,这里用(寝室号+公寓号)共同作为主键来唯一确定一个寝室,交费关系中,这里用记录编号作为主键,每条记录对应一个寝室的交费信息,同样由于交费是以寝室为单元的,所以也可以用(寝室号+公寓号)为主

11、键。消除传递依赖由以上分析可知各关系中的函数依赖都是完全函数依赖,而且没有传递函数依赖,所以此关系模型满足 BCNF,尽管模型可以继续优化,但在实际中此模型已经满足要求。33 物理结构设计表 3.1 学生信息表的结构编号 字符名称 数据类型 长度 说明1 id int 4 记录编号,不允许空2 学号 nvarchar 30 学生学号,主键3 姓名 nvarchar 20 允许空4 性别 char 2 不允许空5 出生日期 smalldatetime 4 允许空6 专业 nvarchar 20 允许空87 班级 nvarchar 20 允许空8 联系方式 nvarchar 20 允许空9 公寓号

12、 nvarchar 10 允许空10 寝室号 nvarchar 10 允许空11 备注 nvarchar 50 允许空表 3.2 公寓信息表的结构编号 字符名称 数据类型 长度 说明1 id int 4 记录编号,不允许空2 公寓号 nvarchar 10 公寓楼编号,主键3 楼层数 int 4 允许空4 房间数 int 4 允许空5 启用时间 smalldatetime 4 允许空6 备注 nvarchar 50 允许空表 3.3 寝室信息表的结构编号 字段名称 数据类型 长度 说明1 id int 4 记录编号,不空2 寝室号 nvarchar 10 主键3 可住人数 int 4 允许空4

13、 住宿费用 float 8 允许空5 电话 nvarchar 10 允许空6 公寓号 nvarchar 10 主键7 备注 nvarchar 50 允许空表 3.4 交费信息表的结构编号 字段名称 数据类型 长度 说明1 id int 4 编号,主键2 公寓号 nvarchar 10 允许空3 寝室号 nvarchar 10 允许空4 交费时间 smalldatetime 4 允许空5 交费类型 smalldatetime 10 允许空6 金额 nvarchar 8 允许空7 备注 nvarchar 50 允许空表 3.5 来访信息表的结构编号 字段名称 数据类型 长度 说明1 id int

14、4 记录编号,主键2 来访人姓名 nvarchar 10 允许空3 人数 int 4 允许空94 被访者姓名 nvarchar 10 允许空5 所属关系 nvarchar 10 允许空6 来访时间 smalldatetime 4 允许空7 结束时间 smalldatetime 4 允许空8 事由 nvarchar 50 允许空9 值班人 nvarchar 10 允许空表 3.6 操作员信息表的结构编号 字段名称 数据类型 长度 说明1 id int 4 编号,主键2 操作员 ID nvarchar 10 允许空3 操作员姓名 nvarchar 10 允许空4 密码 nvarchar 10 允许

15、空5 权限 char 6 允许空6 备注 nvarchar 50 允许空四 数据库实现4.1 创建学生信息表create table Student -创建学生信息表( id int not null, -记录编号,不空Sno nvarchar(30) primary key, -学号,主键Sname nvarchar(20), -姓名Ssex char(2) not null, -性别Sbirth smalldatetime, -出生日期Sdept nvarchar(20), -专业Sclass nvarchar(20), -班级Sphone nvarchar(20), -联系方式Sbuil

16、d nvarchar(10), -公寓号Sroom nvarchar(10), -寝室号Sother nvarchar(50), -备注foreign key(Sbuild) references Building(Sbuild), -学生公寓关系FOREIGN KEY(Sroom,Sbuild) REFERENCES Dorm(Sroom,Sbuild), -学生寝室关系)4.2 创建公寓信息表create table Building -公寓信息表( id int not null, -记录编号,不空Sbuild nvarchar(10) primary key, -公寓号,主键floor

17、num int, -楼层数roomnum int, -房间数10usetime smalldatetime, -启用时间Bother nvarchar(50), -备注)4.3 创建寝室信息表create table Dorm -寝室信息表( id int not null, -记录编号Sroom nvarchar(10), -寝室号Dnum int, -可住人数Dfee float(8), -住宿费用Dphone nvarchar(10), -电话Sbuild nvarchar(10), -公寓号Dother nvarchar(50), -备注primary key(Sroom,Sbuild

18、), -主键)4.4 创建交费信息表create table Pay -交费( id int primary key, -记录编号,主键Sbuild nvarchar(10), -公寓号Sroom nvarchar(10), -寝室号paytime smalldatetime, -交费时间paytype nvarchar(10), -交费类型Pfee float(8), -金额Pother nvarchar(50), -备注foreign key(Sroom,Sbuild) references Dorm(Sroom,Sbuild), -交费公寓关系)4.5 创建来访信息表create tab

19、le Visit -来访登记表( id int primary key, -记录编号,主键Vname nvarchar(10), -来访人姓名Vnum int, -来访人数Vnamed nvarchar(10), -被访人姓名relat nvarchar(10), -所属关系Vtime smalldatetime, -来访时间Vend smalldatetime, -结束时间reason nvarchar(50), -事由watch nvarchar(10), -值班人)4.6 创建操作员信息表create table Operator -操作员信息表( id int primary key,

20、 -记录编号,主键11Oid nvarchar(10), -操作员 idOname nvarchar(10), -操作员姓名Opass nvarchar(10), -密码Olimit char(6), -权限Oother nvarchar(50), -备注)4.7 关系图如下12BuildingidSbuildfloornumroomnumusetimeBotherDormidSroomDnumDfeeDphoneSbuildDotherOperatoridOidOnameOpassOlimitOotherPayidSbuildSroompaytimepaytypePfeePotherStud

21、entidSnoSnameSsexSbirthSdeptSclassSphoneSbuildSroomSotherVisitidVnameVnumVnamedrelatVtimeVendreasonwatch4.8 插入数据-插入公寓楼13insert into Buildingvalues(0001,01,05,100,2000-1-2,无)insert into Buildingvalues(0002,02,05,100,2001-4-2,无)insert into Buildingvalues(0003,03,06,150,2002-6-12,无)insert into Building

22、values(0004,04,05,100,2005-10-2,无)insert into Buildingvalues(0005,05,05,100,2007-1-12,无)select * from Building -插入寝室信息insert into Dormvalues(0001,1-101,4,1000,45216535,01,无)insert into Dormvalues(0002,2-101,4,1000,45216534,01,无)insert into Dormvalues(0003,1-101,4,1000,45256535,02,无)insert into Dormv

23、alues(0004,2-101,4,1000,45816535,02,无)insert into Dormvalues(0005,1-101,6,1000,45258735,03,无)insert into Dormvalues(0006,2-101,6,1000,41256535,03,无)select * from Dorm-插入学生信息insert into Studentvalues(0001,20100001,张一,男,1991-1-2 ,信科,一班,45648922,01,1-101,无)insert into Studentvalues(0002,20100002,张二,男,1

24、991-10-2 ,信科,二班,45656922,01,2-101,无)insert into Studentvalues(0003,20100003,张三,男,1992-1-2 ,通信,一班,45848922,02,1-101,无)insert into Studentvalues(0004,20100004,张四,男,1994-1-12 ,计本,三班,45588922,02,1-101,无)insert into Studentvalues(0005,20100005,张五,女,1991-5-2 ,计本,一班,45658922,03,1-101,无)insert into Studentv

25、alues(0006,20100006,张六,女,1991-11-2 ,通信,一班,45468922,03,2-101,无)insert into Studentvalues(0007,20100007,张七,女,1990-4-2 ,信科,一班,45596922,03,1-101,无)insert into Studentvalues(0008,20100008,张八,女,1991-3-1 ,信科,二班,45648542,03,2-101,无)14insert into Studentvalues(0009,20100009,张九,男,1991-2-9 ,信科,一班,41248922,01,1

26、-101,无)insert into Studentvalues(0010,20100010,张十,男,1991-3-5 ,通信,一班,45641522,02,1-101,无)select * from Student -插入缴费信息insert into Payvalues(0001,01,1-101,2010-5-1,水电费,86 ,无)insert into Payvalues(0002,01,2-101,2010-5-1,水电费,70 ,无)insert into Payvalues(0003,02,1-101,2010-5-1,水电费,56 ,无)insert into Payval

27、ues(0004,03,1-101,2010-5-1,水电费,90 ,无)insert into Payvalues(0005,03,2-101,2010-5-1,水电费,80 ,无)select * from Pay-插入来访信息insert into Visitvalues(0001,李四,1 ,张四,朋友,2010-5-3,2010-5-3 ,玩, 王五)insert into Visitvalues(0002,赵六,2 ,张二,同学,2010-7-3,2010-7-5 ,玩, 王五)select * from Visit-插入操作员信息insert into Operator valu

28、es(0001,425001,李飞,001240,)select * from Operator4.9 设置触发器create trigger Insert_or_Update_Dnumbefore insert or update on Dormfor each rowas beginif (new.Sbuild=01) and (new.Dnum4) thennew.Dnum :=4;end if;end; 对寝室人数设置触发器,当人数超过 4 时自动改为 4,同样可对公寓楼02,03,04 设置,而对公寓楼 05 和 06 设置寝室人数为 6.15同时还可以对寝室费用的设置触发器,寝室费

29、用都是 1000 快,当输入数据不等于 1000 时,自动改为 1000.五 数据库运行1617六 人员分工徐爱娟同学主要负责选题,确定课设的目的以及课设的任务,还有对问题需求的分析,系统流程的设计,模块的分类和系统概念结构的设计,对 E-R 图的设计等工作,雷帅同学主要负责对系统逻辑结构的设计以及优化,还有对物理结构的设计以及实现和数据库的实现以及运行和维护等工作七 谢辞在整个课程设计过程中,我的指导老师严谨的治学精神、深厚的理论水平,特别是他独特的思路,使我获益匪浅;他孜孜不倦地解答我在课程设计中遇到的各种各样的问题,使我对数据库理论知识和实际应用有了进一步的结合,这里我对他表示衷心感谢。参考文献:1 王珊 萨师煊。 数据库系统概论高等教育出版社 2006.5 第 4 版2 伊文敏 刘峰 王颖。 Delphi+SQL Sever 数据库应用实例人民邮电出版社 2006.12 第 1 版

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报