客房管理系统课程设计报告_第1页
客房管理系统课程设计报告_第2页
客房管理系统课程设计报告_第3页
客房管理系统课程设计报告_第4页
客房管理系统课程设计报告_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、- 课程设计院别:信息科学与电气工程学院班级:计算141姓名:吴刚学号:9指导教师:张岳设计地点:实验楼307时间:2016年9 月4日至2016 年9 月16 日课程设计任务书题 目数据库课程设计客房管理系统系(部)信息科学与电气工程学院专业计算机科学与技术班级计算141学生姓名吴刚学 号 909 月04_日至09_月16 日共_2周指导教师(签字)院长(签字)2017 年09月17日一、设计内容及要求内容:客房各种信息,包括客房的类别、当前的状态、价格等;客房信息的查询和修改, 比如按房间号查询住宿情况。以及退房、订房、换房等信息的修改。对查询、统计 结果输出。通过本次课程设计让学生能够综

2、合运用所学的关系数据库原理知识解决并能设计 一个实际问题,进一步掌握数据库原理的相关理论和数据库的设计实现过程,进一 步提高学生的分析问题和解决问题的能力以及学生的动手能力。要求:1 对各个系统进行系统功能需求分析2. 数据库设计分析阶段,进行详细的数据库需求分析,进行概念数据库的设计,画 出数据库的E-R图(局部和整体E-R图)3. 设计出详细的逻辑数据库结构,将各个实体和联系转化为相应的二维表即关系模 式,指定各个关系的主关键字和外部关键字,并对各个关系的约束加以限定4. 通过企业管理器或是查询分析器实现各个二维关系(建议最好用SQL代码实现),要求建立相关的索引5. 根据系统功能需求设计

3、相应的查询视图6. 要求根据系统功能需求建立存储过程7. 根据功能需求建立相应的触发器以保证数据的一致性8. 通过建立用户和权限分配实现数据库一定的安全性,考虑数据库的备份与恢复 (此内容选作)二、设计原始资料1、数据库原理2、课程设计题目:客房管理系统三、设计完成后提交的文件和图表1计算说明书部分2 图纸部分:课程设计报告格式(附后):封面、题目、时间地点、目的及要求、内容、详细 的步骤和代码编写过程(绘制出拓扑图)、总结。设计报告格式:设计题目设计时间、地点设计目的设计要求设计思路(要求有文字描述,并画出流程图)(占报告40%)设计过程(要求有文字说明实现的过程,并对相应的代码添加注释)(

4、占报告40%)设计总结(分析程序的得与失)心得体会封面格式如下(一定要有封面):四、进程安排教学内容学时地点备注分配任务与分组1天实验室系统功能需求分析1天实验室数据库需求分析1天实验室逻辑数据库结构2天实验室查询视图、存储过程、1天实验室触发器编程2天实验室程序测试和成果验收2天实验室五、主要参考资料1数据库系统原理与应用沈祥玖 张岳中国水利水电出版社 20162. SQL Server数据库配置与管理指南刘奎?清华大学出版社20103. SQL与关系数据库理论周成兴 清华大学出版社 2010信息科学与电气工程学院课程设计成绩评定用表平时成绩(30%答辩成绩(40%报告成绩(30%总成绩注:

5、本表可根据实际情况修改。目录刖言 11. 问题描述 1背景功能要求 2. 需求分析 需求分析 2处理对象 2系统功能分析 3 错误! 未定义书签。系统功能模块图 . 4数据字典 43. 概念结构设计 5E-R 图 5实体及属性的定义. 64. 物理结构设计 65. 触发器设计 66. 数据库的实施和维护 8建立数据库、数据表、索引 8错误! 未定义书签错误! 未定义书签错误! 未定义书签7. 存在问题总结 10致 谢 108. 主要参考资料 10附 录 12、八前言随着我国经济的迅速发展和假日经济的出现,宾馆酒店业的竞争愈来愈激 烈。要想在竞争中取得优势,必须在经营管理、产品服务等方面提高服务

6、管理意 识。而对对酒店的经营状况去决定行作用的是酒店的管理。如何利用先进的管理 手段,提高酒店的管理水平,是每一家酒店的管理者所面临的重要课题。简单的 服务标准已经不是制胜的锦囊, 只有做到最细微之处才有机会让顾客体会到酒店 服务的优点,而精准、快捷、周全往往就是最基本的成功要素。因此,采用全新 的计算机网络和管理系统,将成为提高酒店的管理效率,改善服务水准的重要手 段之一。信息与科技在酒店管理与现代化建设中显现出越来越重要的地位。在某 种意义上,酒店客房状态管理方面的信息化与科学化,已成为现代化酒店的重要 标志。关键字:客房管理;管理系统;服务。1. 问题描述背景随着宾馆业竞争的加剧,宾馆之

7、间客源的争夺越来越激烈,宾馆需要使用更 有效的信息化手段,拓展经营空间,降低运营成本,提高管理和决策效率。传统 的宾馆计算机管理系统主要包括前台管理系统和后台管理系统两大部分, 基本包 含了宾馆主要业务部门, 初步实现了对顾客服务和进行财务核算所需要的各个功 能。但传统的宾馆管理基于财务管理为主线的设计理念,无法满足宾馆全面信息 化管理的需要。现代宾馆酒店业迅速发展,新的管理观念与模式层出不穷。宾馆 客房管理系统亦随着宾馆管理理念的发展而发展。 宾馆客房管理系统依旧采用了 先进的数据库理论,多媒体技术,软件工程理念等,从基层,中层,高层三个管 理者层次为切入点,以成本分析,预测,控制为一线,形

8、成一套上下贯通,操作 便捷的酒店系统解决方案,科学地将宾馆各种日常业务完美的结合在一起,为管 理及决策提供了强有力的支持。其对客人个性化服务及全面彻底的信息化,使企 业电算化水平提升到一个新的更高层次, 提供大量丰富的基于企业管理经营过程 中实际的数据。功能要求( 1)客人基本信息的录入;( 2)客人基本信息的查询、修改、增加、删除等;( 3)客房相关信息的录入,包括房间号、收费标准、床位、类别等;( 4)客房类别标准的制定、类别信息的输入;( 5)客房基本信息的查询、修改、删除等;( 6)住房信息的录入,包括房间号、客人姓名等;( 7)退房信息的更新;2. 需求分析需求分析处理对象系统要处理

9、的对象包括信息管理、客户信息管理、客房信息管理、入住和退 房管理、客房类型管理、费用管理、价目信息管理等 7 个方面,各个对象包含的 信息如下所示:( 1)信息管理:可以对于各种信息的查询,个人信息可以查看自己的私人 信息,还可以对自己的私人信息进行修改。用户信息查看用户的个人信息,对用 户的信息进行增、删、查、改。( 2)客户信息管理:可以新建客户,输入客户的身份证号码、姓名、性别、 出生日期和地址等信息,可以对于客户的信息进行相应的修改,还可以对客户的 消费信息进行统计。( 3)客房信息管理:可以在相应的房间类型下面进行添加相应的房间,对相 应的房间进行删除,查看空房以及客房的情况。( 4

10、)入住和退房管理:客户可以入住相应的类型房型下的空房,然后可以退 房,系统自动将相应的订单状态置为失效,入住状态置为已退房,将相应房间的状态置为空房( 5)客房类型管理:管理员可以对相应的房型进行各种属性的修改,可以按 照需求添加相应的房型,管理员、工作人员都可以查看相应的房型信息,管理员 有需要时可以删除相应的房型,系统自动将该房型下的房间删除。( 6)费用管理:管理员、工作人员都可以查看相应的费用信息,管理员有需 要时可以对宾馆的收入与支出进行查询或修改。( 7)价目信息管理:可以查看客房的收费标准,管理员可以对客房价格进行 查询与修改,工作人员可以查看可风的价目信息。系统功能分析某宾馆需

11、要建立一个住房管理系统,需求分析结果如下:( 1)宾馆要求该系统能实现住房信息管理、客户信息管理等功能;( 2)一个房间有多个床位,同一房间内的床位具有相同的收费标准。不同类 型的房间的床位收费标准可能不同;( 3)每个房间有房间号、收费标准、床位数目等信息;( 4 )每位客人有身份证号码、姓名、性别、出生日期和地址等信息;( 5)对每位客人的每次住宿,应该记录其入住日期、退房日期和预付款额信 息;(6)管理系统可查询出客人住宿相关信息、房间信息。安全性先通过试图机制,不同的用户只能访问系统授权的视图,这样可以满 足系统数据一定程度上的安全性,在通过用户授权机制,用户登录来识别用户级 别,根据

12、这个级别来分配用户权限,达到数据更高层次的安全保密功能。系统完整性要求系统中数据的正确性以及相容性。可以通过建立主、外键, 使用 check 约束,或者通过使用触发器和级联更新。系统功能模块图系统功能模块图,如图所示。图 系统的功能模块图数据字典表2-3. 客户信息表:表中列名数据类型可否为空说明编号IntNot null自增姓名Varchar ( 20)Not null性别intNot null(0-男,1-女)出生日期dataNot null身份证号Varchar(20)Not null主键联系电话Varchar(20)Not null家庭住址Varchar(50)Not null会员等级

13、Varchar(10)Not null会员积分floatNot null表2-4. 客房信息表:表中列名数据类型可否为空说明编号IntNot null自增房间号Varchar(10)Not null主键分类Varchar(20)Not null订房状态intNot null0-已订,1-未订清洁状态intNot null0-已清洁,1-未清洁价格floatNot null折扣floatNot null房间描述Varchar(500)Not null可用状态intNot null0-可用,1-不可用表2-5.订房信息表:表中列名数据类型可否为空说明编号intNot null自增身份证号Varch

14、ar(20)Not null联合主键、外键房间号Varchar(20)Not null联合主键、外键入住时间datetimeNot null联合主键退房时间datetimeNot null总房价floatNot null3. 概念结构设计E-R图各实体之间的E-R图,如图3-1所示图3-1实体之间的E-R图实体及属性的定义客户信息实体的E-R图,如图3-2所示。图 32 客户信息实体的 E R 图客房信息实体的E-R图,如图3-3所示。图 3 3 客房信息实体的 E R 图客户住宿实体的E-R图,如图3-4所示。图34 客户住宿实体的E R图4. 物理结构设计数据库的物理设计就是为逻辑数据模型

15、选取一个最合适应用要求的物理结构的过程,在这个阶段要完成两大任务。(1) 确定数据库的物理结构,在关系数据库中主要是存储方法和存储结构。(2) 对物理结构进行评价,评价的重点是时间和空间效率。CREATE UNIQUE INDEX Travno ON Travellers(Tno)CREATE UNIQUE INDEX Roomno ON Rooms(Rno)CREATE UNIQUE INDEX Ritemno ON Roomitem(Ritemno)CREATE UNIQUE INDEX Livno ON Living(Tno)5. 触发器设计会员积分:USE kfglxt19:36:40

16、GO /* Object: Trigger dbo.t1 Script Date: 09/26/2017 */SET ANSI_NULLSONGOSET QUOTED_IDENTIFIERONGOALTERtrigger dbo .t1on dbo . 订房信息表 after insertasbeginset nocount on;declare 编号 int , 增加积分 intselect 编号 =身份证号 , 增加积分 =总房价from insertedupdate dbo. 客户信息表set 会员积分 =会员积分 +增加积分where 身份证号 =编号End会员等级:USEkfglxt

17、GO/* Object: Trigger dbo. 会员等级增加 Script Date: 09/26/2017 19:37:52 */SET ANSI_NULLSONGOSET QUOTED_IDENTIFIERONGOALTERtrigger dbo . 会员等级增加 on dbo . 订房信息表 after insert as beginset nocount on;declare 编号 int , 增加积分 intselect 编号 =身份证号 , 增加积分 =总房价 from insertedupdate dbo. 客户信息表set 会员等级 =(会员积分 +增加积分 )/ 100

18、where 身份证号 =编号End6. 数据库的实施和维护 建立数据库、数据表、索引Create database kfglxt;(1 )客户信息表CREATETABLE客户信息表(编号 int IDENTITY(1,1)NOTNULL, 姓名 varchar ( 20)NOT NULL, 性别 int NOTNULL,出生日期 date NOTNULL,身份证号 varchar ( 20)NOT NULL, 联系电话 varchar ( 20)NOT NULL, 家庭住址 varchar ( 50)NULL, 会员等级 varchar ( 10)NULL, 会员积分 float NULL,C

19、ONSTRAINT! PRIMARYCEY身份证号);(2) 客房信息表CREATETABLE客房信息表(编号 int IDENTITY(1,1)NOTNULL,房间号 varchar ( 10)NOT NULL,分类 varchar (20)NOTNULL, 订房状态 int NOTNULL, 清洁状态 int NOTNULL, 价格 float NOTNULL, 折扣 float NOTNULL, 房间描述 varchar (500)NOTNULL, 可用状态 int NOTNULL,CONSTRAINT6 PRIMARYCEY房间号);(3) 订房信息表CREATETABLE订房信息表(

20、编号 int IDENTITY(1,1)NOTNULL, 身份证号 varchar (20)NOTNULL, 房间号 varchar ( 10)NOT NULL, 入住时间 datetime NOTNULL,退房时间 datetime NOTNULL, 总房价 float NOTNULL,CONSTRAINT2 PRIMARYCEY身份证号,房间号,入住时间),CONSTRAINT3 FOREIGNKEY身份证号)REFERENCE客户信息表(身份证号),CONSTRAINT4 FOREIGNKEY房间号)REFERENCE客房信息表(房间号);CREATE UNIQUE INDEX Trav

21、no ON tb_Travellers(Tno)CREATE UNIQUE INDEX Roomno ON tb_Rooms(Rno)CREATE UNIQUE INDEX Ritemno ON tb_Roomitem(Ritemno)CREATE UNIQUE INDEX Livno ON tb_Living(Tno)7. 存在问题总结1. 对书本知识不熟悉,课程设计过程当中需要不断的查阅课本,这样造成了时 间的浪费。2. 2. 对 SQLServer 2000 操作不熟悉,导致导入数据是经常出错,造成了一些 不必要的麻烦,应该提高操作熟练程度。3. 对于触发器和存储过程定义不是很熟悉,有的

22、稍微难点的语句写不出来,对 于数据库定义语句应该要熟练掌握。4. 对数据库设计总体把握不是很准确, 导致中间多次反复的改动前面的业务流程 图、数据流图和E-R图。致谢感谢老师的指导和陪伴- 宋立勇8. 主要参考资料1. 数据库系统原理与应用沈祥玖 张岳 中国水利水电出版社 20162. SQL Server 数据库配置与管理指南刘奎 ?清华大学出版社 201020103. SQL与关系数据库理论周成兴清华大学出版社附录登录界面图 1主界面图 2订房图3源代码import .*;import .*;import .*;class denglu extends JFrame implements

23、ActionListener JLabel systemTime;Container con=();JFrame f=new JFrame( 客房管理系统 );JLabel a=new JLabel( 用户名 );JTextField a1=new JTextField();JLabel b=new JLabel( 密码 );JTextField b1=new JPasswordField();JLabel q=new JLabel( 答辩人:宋立勇 );JButton c=new JButton( 登录 );JButton d=new JButton( 退出 );JPanel z=(JPan

24、el)();ImageIcon icon=newImageIcon(getClass().getResource(/Desktop/);JLabel tu=new JLabel(icon);Container content= ();public denglu(String s)super(s);(null);systemTime = new JLabel( 系统时间: );Container cp = getContentPane();(20,200,200,200);(systemTime);(new Rectangle(100,80,60,30);(new Rectangle(100,1

25、40,60,30);(new Rectangle(150,80,150,30);(new Rectangle(150,140,150,30);(new Rectangle(280,300,100,20);(new Rectangle(100,200,80,30);(new Rectangle(200,200,80,30);(a) ;(b) ;(q);(c) ;(d) ;(a1);(b1);(400,400);(0, 0, getWidth(), getHeight();(tu);(false);().add(tu,new Integer);(true);(this);(this);public

26、 void actionPerformed(ActionEvent e) if()=d)(false);if()=c)try(driverName);catch (ClassNotFoundException b)(); tryConnection dbConn;String userName=sa;String userPwd=370724;dbConn=(dbURL,userName,userPwd);Statement statement;statement = ,;String s1 = ();String s2 = ();etText()(false);ormat(new Date(

27、);time. (sdate);Timer t = new Timer();(task, new Date(), 1000);登录class frist extends JFrame implements ActionListener Container con=();JFrame f=new JFrame( 客房管理系统 ); etResource(/Desktop/);JLabel tu=new JLabel(icon);Container content= ();public frist(String s) super(s);(null);dd(tu,new Integer);(true

28、); etResource(/Desktop/);JLabel tu=new JLabel(icon);Container content= ();public kefang(String s)super(s);(null);dd(tu,new Integer);(true);etResource(/Desktop/);JLabel tu=new JLabel(icon);Container content= ();int qw=0;public tianjia(String s)super(s);(null);dd(tu,new Integer);(true);(this);quals()q

29、w=1;if(qw=1|k1=null|()|k2=null|()|k3=null|()|k4=null|()|k5=null|()|k6=null|()|k7=null|()|k8=null|()(null, 添加失败 , 请将信息填写完整 ,或者房间号已经存在);etResource(/Desktop/);JLabel tu=new JLabel(icon);Container content= ();public xiugai(String s)dd(tu,new Integer);(true);(this);(this);public void actionPerformed(Acti

30、onEvent e) if()=d)(false);if()=c)String k1=();String k2=(); etResource(/Desktop/);JLabel tu=new JLabel(icon);Container content= ();public shanchu(String s)super(s);(null);(new Rectangle(30,30,50,30);(new Rectangle(80,30,180,30);dd(tu,new Integer);(true);(this);(this);public void actionPerformed(Acti

31、onEvent e) if()=d)(false);if()=c)String userName=sa;String userPwd=370724;Connection dbConn;try(driverName); dbConn=(dbURL,userName,userPwd);String sql=Select * from 客房信息表 Statement st = ();quals()qw=1;etResource(/Desktop/);JLabel tu=new JLabel(icon);Container content= ();public chaxun(String s)supe

32、r(s);(null);(new Rectangle(20,30,50,30);(new Rectangle(80,30,180,30);(new Rectangle(80,350,100,30);(new Rectangle(200,350,100,30);(new Rectangle(20,70,50,30);(new Rectangle(80,70,180,30);(new Rectangle(20,110,50,30);(new Rectangle(80,110,180,30);(new Rectangle(20,150,50,30);(new Rectangle(80,150,180

33、,30);(new Rectangle(20,190,50,30);(new Rectangle(80,190,180,30);(new Rectangle(20,230,50,30);(new Rectangle(80,230,180,30);(new Rectangle(20,270,50,30);(new Rectangle(80,270,180,30);(new Rectangle(20,310,50,30);(new Rectangle(80,310,180,30);(a) ;(b) ;(c) ;(d) ;(a5);(b5);(a1);(b1);(a2);(b2);(a3);(b3)

34、;(a4);(b4);(a5);(b5);(a6);(b6);(a7);(b7);(500,600);(0, 0, getWidth(), getHeight();(tu);(false);().add(tu,new Integer);(true);(this);tatement 就是准备执行 sql 的语句ResultSet r1 = (sql);while()if( 房间号 ).equals()qw=1;if(qw=0|()=null|().equals()(null, 房间号不存在或没有输入房间号 );elseStatement st = ();tatement就是准备执行 sql 的语句ResultSet r = (sql);import .*;import .*;class tianjiad extends JFrame implements ActionListenerJLabel systemTime

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论