

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Asdasd第页OGY课程设计题目:数据库客房信息管理系统学生姓名:汪世生专业:软件工程班级:1521822z(卓越班)学号:201520180325指导教师:江霞2016年1月6日本系统采用vb程序开发,要的库友请联系1309867230(QQ)目录(Contents)第3-4页课程设计相关要求第5-6页需求分析1. 需求2. 功能预览流程图第7页ER图第8页ER图转为关系模式第9页数据库表的数据字典第10-11页数据库表1. 客房表(room)2. 客户信息表(customer)3. 退/订房表(checkinout)第12-16页创建数据库及各表、视图、存储过程、触发器的SQL代码第17
2、-21页各功能实例演示1.包括增、删、改、查第22页总结一、课程设计相关要求1. 课程设计的目的和意义数据库应用开发课程设计是实践性教学环节之一,是数据库原理及应用课程的辅助教学课程。通过课程设计,使学生掌握数据库的基本概念,结合实际的操作和设计,巩固课堂教学内容,使学生掌握数据库系统的基本概念、原理和技术,将理论与实际相结合,应用现有的数据建模工具和数据库管理系统软件,规范、科学地完成一个小型数据库的设计与实现,把理论课与实验课所学内容做一综合,并在此基础上强化学生的实践意识、提高其实际动手能力和创新能力。2. 设计要求通过设计一完整的数据库,使学生掌握数据库设计各阶段的输入、输出、设计环境
3、、目标和方法。熟练掌握两个主要环节概念结构设计与逻辑结构设计;熟练的使用SQL语言实现数据库的建立、应用和维护。(1) 根据题目写出需求分析(详细的功能描述)(2)画出全局E-R图(3)将E-R图转换为关系模式,定义主键、外键(4) 在SQLServer中创建数据库及数据表(至少3个数据表),定义约束。(5) 输入数据,至少创建4个视图,便于用户查看数据,数据可涉及多个表。(6) 至少创建3个存储过程,实现系统的主要功能(7) 创建1个登录、数据库用户,并分配数据库管理员权限。(8) 至少创建2个触发器,保证数据的正确性、数据的自动更新。(9) 为数据库做完全备份成果:报告,数据库文件(mdf
4、和ldf),备份文件(bak),前台程序(VB或其他语言实现)。3. 本课程设计内容与要求掌握数据库的设计的每个步骤,以及提交各步骤所需图表和文档。通过使用目前流行的DBMS,建立所设计的数据库,并在此基础上实现数据库查询、连接等操作和触发器、存储器等对象设计。(1) 需求分析:根据自己的选题,给出功能模块图和必要的文字说明。(2) 概念结构设计:绘制所选题目详细的E-R图。(3) 逻辑结构设计:将E-R图转换成等价的关系模式;按需求对关系模式进行规范化;对规范化后的模式进行评价,调整模式,使其满足性能、存储等方面要求;根据局部应用需要设计外模式。Asdasd第4页(4) 物理结构设计:选定实
5、施环境,存取方法等。(5) 数据实施和维护:用DBMS建立数据库结构,加载数据,实现各种查询、链接应用程序,设计库中触发器、存储器等对象,并能对数据库做简单的维护操作。(6) 成果:课程设计报告,程序,数据文件,日志文件,备份文件4. 课程设计报告要求课程设计报告有四个方面的要求:(1) 问题描述。包括此问题的理论和实际两方面。(2) 解决方案。包括:E-R模型要设计规范、合理,关系模式的设计至少要满足第三范式,数据库的设计要考虑安全性和完整性的要求。(3) 解决方案中所设计的E-R模型、关系模式的描述与具体实现的说明。(4) 具体的解决实例。Asdasd第5页12客户管理(1) 新建客户(2
6、) 修改客户信息(3) 客户信息统计14入住管理(1) 入住(客房状态同时置为非空)(2) 退房(客房状态同时置为空)二需求分析阶段1.需求进行数据库系统设计,首先要对系统的现状进行分析,明确客房信息管理系统的相关需求课程设计所要实现的目标、需求和功能,制定和选择一个较好的系统方案,有计划,有头绪,有思路,不能盲目的就着手去做,从而达到一个合理的优化系统。需求分析在于弄清这次课程设计的酒店管理系统的确切要求,因此,数据库课程设计的第一步就是明确数据库的目的和如何使用该系统。明确目的之后,才可以确定自己需要保存那些表信息,以及每个表中需要保存哪些字段。对于酒店客房管理系统,需要了解以下内容:1.
7、1信息管理(1) 个人信息(2) 用户信息(3) 客户信息(4) 房间信息(5) 订单信息(输入房号,结束账)1.3房间管理(1)查看客房信息(2)空房统计(3)添加房间(4)删除房间(有人预定的也会删除)Asdasd第6页2.功能预览图Asdosd第7页Asdasd第7页四 ER转为关系模式1. 工作人员(工作人员ID号(主键),管理员ID(外键)-t2. 管理员(管理员ID(主键)3. 客户(客户ID号(主键),姓名,性别,电话,管理员ID(外键)4. 房间(房间号(主键),类型,价格,状态,客户姓名,性别,电话,客户ID号(外键),管理员ID(外键)5. 管理(客户ID号(主键),工作人
8、员ID号(主键),客户姓名,客户性别,客户电话)Asdasd第&页五 数据字典1.数据项数据项名称数据类型及长度说明房号字符,可变长度10主键,不能为空客房类型字符,可变长度20价格(*/天)Float型客房状态字符,可变长度15客户身份证号字符,可变长度20主键,不能为空客户名字字符,可变长度20性别字符,可变长度2不能为空(男/女)联系电话字符,可变长度15入住时间Date型不能为空退房时间Date型不能为空六 数据库表1.客房信息表room列名数据类型长度允许空字段说明主,外键Rnum字符10否客房号Pk,FkRtype字符20是客房类型RpriceFloat是客房单价Rstat
9、e字符15是客房状态2.客户信息表customer列名数据类型长度允许空字段说明主,外键Cid字符20否身份证号Pk,FkCname字符20是名字CsexFloat2否性别Cphone字符15是联系电话3.退/订房表checkinout4.退/订房表checkinout列名数据类型长度允许空字段说明主,外键DateinDate否入住时间DateoutDate否退房时间Cid字符2否身份证号PkRnum字符15否预定房号PkAsdasd第21页七.SQL代码客房信息管理:客房房号,类型,价格,状态等信息录入客户信息管理:客户信息录入、修改、删除(客户身份证号,姓名,性别,联系电话)客房信息查询:
10、按类型、状态(是否为空)、房号等关键字查询客房的基本信息和入住情况入住、退房、结算、账单打印、createdatabasecus_roomonprimary(name=cus_room,filename='e:数据库cus_room.mdf',size=10,maxsize=50,filegrowth=2)logon(name=cus_room1,filename='e:数据库cus_room.ldf',size=10,maxsize=50,filegrowth=2)usecus_roomcreatetableroom(rnumvarchar(10)constr
11、aintpk_rnumprimarykeynotnull,rtypevarchar(20),rpricedecimal,rstatevarchar(15)createtablecustomer(cidvarchar(20)constraintpk_cidprimarykeynotnull,cnamevarchar(20),csexchar(2)constraintck_csexcheck(csex='男'orcsex='女'),cphonevarchar(15)createtablecheckinout(dateindatetime,dateoutdatetim
12、e,cidvarchar(20)constraintfo_cidforeignkeyreferencescustomer(cid)onupdatecascadeondeletecascade,-一当对应主键(cid)发生改变时,该字段对应数据也会发生修改rnumvarchar(10)constraintfo_rnumforeignkeyreferencesroom(rnum)onupdatecascadeondeletecascade,-当对应主键(rnum)发生改变时,该字段对应数据也会发生修改constrainttwo_pkprimarykey(cid,rnum)一一创建视图view1用于
13、结算房租createviewview1asselectroom.rnum,customer.cid,rprice,datein,dateoutfromroom,customer,checkinoutwhereroom.rnum=checkinout.rnumandcustomer.cid=checkinout.ciddropviewview1select*fromview1-创建视图view2,用于订房对象(人)的选择createviewview2asselectcustomer.cidfromcustomerwherecidnotin(selectcidfromcheckinoutwhere
14、customer.cid=checkinout.cid)select*fromview2-创建视图view3,用于订房对象(房号)的选择createviewview3asselectroom.rnumfromroomwherernumnotin(selectrnumfromcheckinoutwhereroom.rnum=checkinout.rnum)select*fromview3-创建视图view4,用于综合查询createviewview4asselectroom.rnum,customer.cid,cname,csex,cphone,rprice,rtype,dateinfromro
15、om,customer,checkinoutwhereroom.rnum=checkinout.rnumandcustomer.cid=checkinout.cid-dropviewview4select*fromview4-创建视图view5,用于综合查询对象(人)的选择createviewview5asselectcustomer.cidfromcustomerselect*fromview5-创建视图view6,用于订房对象(房号)的选择createviewview6asselectroom.rnumfromroomselect*fromview6-创建存储过程p1,用于综合查询的按ci
16、d(身份证号)查询createprocedurep1(cidvarchar(20)asifexists(select*fromview4wherecid=cid)select*fromview4wherecid=cidelseprint'该客户暂时没有订房'-dropprocp1p1'123'-创建存储过程p2,用于综合查询的按客房rtype(类型)查询createprocedurep2(rtypevarchar(10)asselect*fromroomwherertype=rtypep2'单人'一创建存储过程p3,用于综合查询的按客房rstat
17、e(状态)查询createprocedurep3(rstatevarchar(10)asselect*fromroomwhererstate=rstatep3'有'-创建触发器tri,当chechinout(客房记录)表有人退房时,删除customer(客户信息)表中对应的客户信息createtriggertr1oncheckinoutfordeleteasdeletefromcustomerwherecid=(selectcidfromdeleted)-droptriggertr1-创建触发器tr2,当chechinout(客房记录)表有用户订房时,room表对应的房号的状态
18、更新为'无'createtriggertr2oncheckinoutforinsertasupdateroomsetrstate='无'wherernum=(selectrnumfrominserted)-droptriggertr2-创建触发器tr3,当chechinout(客房记录)表有用户退房时,room表对应的房号的状态更新为'有'createtriggertr3oncheckinoutfordeleteasupdateroomsetrstate='有'wherernum=(selectrnumfromdeleted)-d
19、roptriggertr3八实例演示1.管理员登录回汪世生账号milUIUa酒店客房信息管理葩提录成功!确定讷处*彦作©盘弦i,虎ThinkingaboutsomethingpleasantWithASADALstartyourinternetbusinessAM(N4Mbmfwv*faM»0lfwtj0*«tdvn*»av>«w»hM*vi*N»iKcRD如ktaKOlgMontw3UWQ0WMadovMbahkMiNMMMQEnsfardmotiB*arauntUt«gMMa*&
20、gt;mMehMtiQ.2.管理入口选择界面3.信息的增、删、改3.1客房信息的录入客房信息表-房号类型价格状态00020003000400050006000700080009001000110012001300140015001600170018人人人人人人人人人人人人人人人人人双双留单单留单餐餐单蚩双099244oO0110502953820839911167819917199191无有无有有无无有有无有有有有有有有返回登录畀面|返回菜单畀厠打开表格|添加信息房号类型|双人Imai状态|190帖录入132客房信息的修改'耳客房信息管理弄面客房信息亍房号类型价格状态000200030
21、0040005000S000700080009001000110012001300140015001S00170018人人人人人人人人人人人人人人人人人单双901191196075100122999513478124909813099190修改信息房号0002确定修改|刪除信息房号类型操作控制返回登录界面1返回菜单界面打开表格1确定修改|F胪ZJUI口吊类型1确定录A.|价格L状态锁弃录A.|3.3客房信息的删除3.3客房信息的删除回S3客房信息表房号类型价格状态0002000300050006000700080009001000110012001300140015001600170018草蜃
22、单单蜃单蜃蜃单蚩双X人人人人人人人人人人人人人人人9O24010502953891671199174oO208399199191有有有无有有无有有有有有有有4.客户信息的录入&客户信&管3旦弄面客户信息表身份证号姓名性别电话000000000200000000030000000004000000000500000000080000000009000000001000000000110000000012生英进麗弟-丽修改信息房号阿确走修改I确走修改I房号类型价格状态I厂|有该房号该房号所有信息已删除M!确走16687799777158679438331546547734413445454566143543543431378489343414334345
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论