数据库课程设计-学生宿舍管理系统.doc
《数据库课程设计-学生宿舍管理系统.doc》由会员分享,可在线阅读,更多相关《数据库课程设计-学生宿舍管理系统.doc(24页珍藏版)》请在咨信网上搜索。
1、数据库原理课程设计说明书学生宿舍管理系统学 院: 计算机与信息科学学院专 业: 网络工程 班 级: 网络1402姓名学号:吴琳琳1420140231 姓名学号:周岐浪1420140217指导教师: 高金华 职称 讲师完成时间:2016年12月1、管理系统设计的背景、意义及目标l 设计背景l 设计意义l 设计目标2、系统开发环境3、系统需求分析l 基本功能需求l 功能模块l 数据字典4、概念结构设计l 概念设计l E_R模型设计5、逻辑结构设计l 将E_R图转换为关系模型l 各表关系模型图6、数据实施和维护l 功能实现代码l 系统实现效果7、个人实现的功能8、总结1、管理系统设计的背景、意义及目
2、标l 设计背景随着IT事业的发展,如今,我们已经全面跨入信息时代。计算机被广泛的应用于各个行业,人工战略已经转化为信息战略,如何在短时间内获取大量信息并整合信息,成为立足于时代的关键。为了适应考生人数的急剧增长,当今社会各大高校都在进行扩招政策,学生数量的急剧增加带来信息量的成倍增长,由于信息管理的不善与疏忽,各大高校大小事故时有发生.进行正确的信息管理,对于信息及时处理和反应,能够最大程度的减少学校以及在校学生的损失,减小潜在危机。学生宿舍是学生生活的基本单位,是同学休息与学习的地方,为了保障同学入住学生宿舍的安全性,信息的处理和管理极为重要.据了解,本校的宿舍信息管理仍然使用传统的手工方式
3、,主要方式是基于文本、表格等纸介质的手工处理,用人工手抄对男女生信宿信息进行处理登记.数据信息处理工作量大,容易出错且不易修改;由于数据繁多,容易丢失,逐条查找记录的方式不易操作,浪费了大量的时间,效率极低。学校的宿舍管理缺乏系统,规范的信息管理手段。建立学生宿舍管理系统,使宿舍管理工作系统化,规范化,便捷化,程序化,避免宿舍管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改宿舍情况.l 设计的意义高校规模的扩大,在校学生的基本情况随之层次化、多样化、复杂化,相应的,学生管理工作面临严峻的挑战。高校学生信息日渐庞大,相应的宿舍管理工作变得复杂而困难。传统的账本化工作模式
4、,手工记录学生信息并存档,这样的人工管理方式费时、费事、费力,信息获取慢,更新滞后,查阅困难,容易出错.为了给学生提供一个安全舒适的工作、生活、学习环境,方便宿舍管理工作的同时为学生、教师提供准确实时的信息至关重要。本校的宿舍信息管理,主要方式是基于文本、表格等纸介质的手工处理,用人工手抄对男女生信宿信息进行处理登记。数据信息处理工作量大,容易出错且不易修改;由于数据繁多,容易丢失,逐条查找记录的方式不易操作,浪费了大量的时间,效率极低.以上的管理缺陷对学生宿舍管理造成了相当大的阻力,工作进展困难,问题解决的周期过长,资料整改工作量过大。为了改善学生宿舍管理情况,运用数据库技术对学生信息进行处
5、理和统一管理,在校园内实现宿舍无纸化办公.利用计算机的特点,利用互联网进行远程操作,制定学生客户端,教师客户端,管理员客户端,实现有针对性信息化管理,充分发挥计算机的高效性、可靠性、保密性、大容量、低成本等特点,建立学生宿舍管理系统,对宿舍相关信息进行统一管理。新型管理方式学生宿舍管理系统,将帮助宿舍管理人员提高工作效率,全面地掌握宿舍情况,提高宿舍安全系数,快速解决学生入住学生宿舍遇到的问题,帮助管理人员与教师及时掌握学生情况。l 设计目标开发设计学生宿舍管理系统,运用简单的计算机操作实现快速检索和快速查找,方便信息录入和更新,本系统仅针对管理员进行使用。实现信息查询、日常管理、宿舍管理、信
6、息维护几个方面的系统化管理:1、信息查询:a)宿舍信息:包括宿舍楼编号、寝室编号、入住人数、寝室入住人员学号、用水量、用电量、水费、电费。b)学生信息:包括学生姓名、学号、宿舍号c)宿舍基本配置:包括床、柜子、灯、风扇、电视机2、宿舍管理:学生管理(入住、更换宿舍、);房间管理(增加、删除、查询)3、信息维护:学生个人信息更新、宿舍信息更新、宿舍设备信息更新.2、系统开发环境开发所使用数据库系统:MySql开发环境:windows 7开发工具:Microsoft VisualStudio 2010开发语言:C+、SQL3、系统需求分析l 基本功能需求学生宿舍管理系统为了更好的进行宿舍管理而设计
7、。用户的需求具体体现在各种信息的输入、修改和查询.系统功能实现如下:1、提供学生的入住信息的录入,更换宿舍信息登记.提供各宿舍的具体信息,如宿舍楼栋、宿舍号、水费、电费等.并可通过查询宿舍号得到宿舍的具体信息、入住的学生信息、宿舍的设备信息等.2、提供管理员增加、删除各信息的功能。l 功能模块本宿舍管理系统的主要功能为:学生管理、宿舍信息管理、宿舍设备信息管理、信息查询、息更新、信息维护。l 数据字典(1)宿舍设备情况数据字典(2)宿舍信息情况数据字典(3)学生信息情况数据字典4、概念结构设计l 概念设计(1)学生实体:用于显示学生的属性,包括姓名、学号、宿舍编号。(2)宿舍实体:用于显示宿舍
8、的属性,包括楼号、宿舍号、入住学生学号、可住人数、已住人数、用水量、水费、用电量、电费。(3)宿舍设备实体:用于显示宿舍设备的属性,包括床、柜子、风扇、灯、电视机。l E_R模型设计(1) 学生实体E_R图(2)宿舍实体E_R图(3)宿舍物品设备实体E_R图(4)各实体关系E_R图5、逻辑结构设计l 将E-R图转换为关系模型:(1)Student:(num、name、dormitoryCat);(2)Room:(dormitoryCat、dormitory、room、studentNum、water、waterCharge、electricity、electricityCharge);(3)I
9、tem:(dormitoryCat、bed、cabinet、light、fan、tv)l 各表关系模型图:(1) Item表外键设计:(2) Student表外键设计:(3) 各表之间的关系模型图,Item表与Student表通过外键与Room联系:6、数据实施和维护l 功能实现的代码/dbstruct。h#pragma onceclass dbStructpublic:MYSQL my;char errMsg300;/学生表charStudentNum9;charStudentName20;/宿舍chardormitoryCat6;chardormitory3;charroom4;doubl
10、ewater;doubleelectricity;doublewaterCharge;doubleelectricityCharge;unsigned int members;/物件boolbed;boolcabinet;boollight;boolfan;booltv;dbStruct();dbStruct();bool Init();bool GetStruct();/添加学生表一项bool InsertStudentTable();/改变一项bool SetStudentTable(char num9);/主键为num, vachar(8)/获取一项bool GetStudent(cha
11、r num9);/*删除一项bool DeleteStudent(char num9);/添加宿舍表一项bool InsertDormitoryTable();/改变一项bool SetDormitoryTable(char dormitoryCat6);/主键为dormitoryCat, varchar(6)/获得一项bool GetDormitory(char dormitoryCat6);/删除一项bool DeleteDormitory(char dormitoryCat6);/添加物品表一项bool InsertItemTable();/改变一项bool SetItemTable(c
12、har dormitoryCat6);/主键为dormitoryCat, varchar(6)/获得一项bool GetItem(char dormitoryCat6);/*删除一项bool DeleteItem(char dormitoryCat6);void ErrMB();/dbStruct.cppinclude stdafx。h”dbStruct:dbStruct()thiswater = 0。0;thiselectricity = 0。0;thiswaterCharge = 0.0;thiselectricityCharge = 0.0;this-members = 4;this-b
13、ed = TRUE;thiscabinet = TRUE;this-light = TRUE;this-fan = TRUE;thistv = TRUE;dbStruct::dbStruct()mysql_close(my);bool dbStruct:Init()mysql_init(this-my);if(!mysql_real_connect(this-my, localhost”, root, ”fast”, ”dormitory”, 0, NULL, 0))StringCchPrintfA(errMsg, 300, ”获取寝室物件信息错误: %sn”, mysql_error(&th
14、ismy);return false;mysql_query(&this-my, SET NAMES gbk);return true;/bool dbStruct::InsertStudentTable()if(this-dormitoryCat = NULL |this-StudentName = NULL | this-StudentNum = NULL)StringCchPrintfA(errMsg, 100, ”添加学生信息错误: 值不完整n”);return FALSE;char query300;/获得该寝室已住人数数StringCchPrintfA(query, 300, ”S
15、ELECT count(dormitoryCat) FROM student WHERE dormitoryCat = ”19425”,this-dormitoryCat);mysql_query(this-my, query);/可以确保在数据库工作正常的情况下,能够查询到惟一的一条数据MYSQL_RES res;res = mysql_use_result(&thismy);MYSQL_ROW row;int i; /i为已住人数while(row = mysql_fetch_row(res)) != NULL)i = row00 0;mysql_free_result(res);if(+
16、i 4)/超过了寝室最大人员数量StringCchPrintfA(errMsg, 300, 添加学生信息错误: 此寝室已满n”);/*是否自动添加宿舍信息return FALSE;/可以添加学生信息StringCchPrintfA(query, 300,”INSERT INTO student(num, name, dormitoryCat) VALUES(”s”, s”, ”s)”,this-StudentNum, this-StudentName, thisdormitoryCat);if(mysql_query(thismy, query) != 0)StringCchPrintfA(e
17、rrMsg, 300, ”添加学生信息错误: %sn”, mysql_error(&this-my));/*是否需要自动添加宿舍信息return FALSE;return TRUE;bool dbStruct::DeleteStudent(char num9)char query300;StringCchPrintfA(query, 300, ”DELETE FROM student WHERE num = ”%s”, num);if(mysql_query(&thismy, query) != 0)StringCchPrintfA(errMsg, 300, 删除学生信息错误: sn”, my
18、sql_error(thismy);/*是否需要自动添加宿舍信息return FALSE;return TRUE;bool dbStruct::GetStudent(char num9)char query300;StringCchPrintfA(query, 300, ”SELECT FROM student WHERE num = ”s”, num);if(mysql_query(&thismy, query) != NULL)StringCchPrintfA(errMsg, 300, ”获取学生信息错误: %sn”, mysql_error(&this-my));return FALSE
19、;MYSQL_RES res;MYSQL_ROW row;res = mysql_use_result(&thismy);while(row = mysql_fetch_row(res)) != NULL)StringCchPrintfA(this-StudentNum, 9, row0);StringCchPrintfA(this-StudentName, 20, row1);StringCchPrintfA(this-dormitoryCat, 6, row2);mysql_free_result(res);return TRUE;/bool dbStruct:InsertDormitor
20、yTable()if(thisdormitoryCat = NULL thisroom = NULL thisdormitory = NULL)StringCchPrintfA(errMsg, 300, ”添加宿舍信息错误: 值不完整n”);return FALSE;char query300;StringCchPrintfA(query, 300,INSERT INTO room(dormitoryCat, dormitory, room, studentsNum, water, electricity, waterCharge, electricityCharge) VALUES(s”,
21、”s”, %s”, %d, 。2lf, 。2lf, .2lf, .2lf),thisdormitoryCat, thisdormitory, thisroom,this-members, this-water, this-electricity, thiswaterCharge, this-electricityCharge);if(mysql_query(thismy, query) != 0)StringCchPrintfA(errMsg, 300, 添加宿舍信息错误: sn”, mysql_error(this-my));return FALSE;this-InsertItemTable
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 课程设计 学生宿舍 管理 系统
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。