数据库项目 酒店管理系统

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

酒店管理系统系别:信息管理系班级:信息14005姓名:江东流学号:141202005171.需求描述一家酒店有多个部门,每个部门拥有自己的部门号、名称、部门经理、办公地点和一定数量员工。每个员工有员工号,姓名,性别,年龄,工资,部门号,职务等属性。每个顾客有顾客编号,姓名,年龄,性别,身份证号,级别等属性,身份证号必须填写且唯一;根据累计消费等途径,将顾客分为不同的VIP等级,级别对应折扣级别。酒店的客房有不同的种类可供选择,由唯一的客房号标识,位置记录每个房间的位置,状态表示此房间此时的状态,空闲、预约、有客等等。相同类型的客房价格一样,每个类型的客房有一定的总量,可以查询剩余的数量以供选择。酒店各部门还提供如KTV、网吧、洗衣等额外收费服务。不同项目价格不同。不同项目在不同地点进行。酒店房间可以预约,每人每天只能预约一次,但可以多次更改之前的预约内容。付款时会产生唯一的款项编号,每一笔款项由一个员工进行处理,根据折扣级别给出应收款和实际收款。2.概念结构设计员工部门号工资员工号性别年龄职务姓名备注员工实体ER图部门部门号名称部门经理办公地点员工数量部门实体ER图项目项目编号收费标准部门号项目名称所在位置项目实体ER图客户顾客编号级别电话身份证号姓名性别年龄顾客实体ER图客房客房号状态类型编号备注位置客房实体ER图类型类型编号类型名称总量剩余量收费标准类型实体ER图款项款项编号顾客号实际收款员工号时间折扣级别应收款款项实体ER图折扣折扣级别折扣情况折扣实体ER图顾客部门员工类型客房隶属开展项目款项折扣打折选择住宿预约分类n11nnm应付11n1mmnnn1发生时间备注离开时间入住时间备注预约时间全局ER图3.逻辑结构设计员工(员工号,姓名,性别,年龄,工资,部门号,职务,备注);部门(部门号,名称,部门经理,办公地点,员工数量);款项(款项编号,顾客号,员工号,时间,折扣级别,应收款,实际收款);折扣(折扣级别,折扣情况);项目(项目编号,项目名称,部门号,所在位置,收费标准);选择(顾客号,项目号,发生时间,备注);顾客(顾客编号,姓名,年龄,性别,身份证号,级别,备注);客房(客房号,类型编号,位置,状态,备注);类型(类型编号,类型名称,费用,总量,剩余量);预约(顾客号,客房号,预约时间,备注)住宿(顾客号,客房号,入住时间,离开时间);员工表:列名数据类型约束条件员工号Char(10)主码姓名Char(10)非空性别Char(2)非空年龄Int工资Int部门号Char(10)外码,参照部门表中的部门号职务Char(10)备注Varchar(100)部门表:列名数据类型约束条件部门号Char(10)主码名称Char(20)非空部门经理Char(10)外码,参照员工表中的姓名办公地点Char(10)员工数量Int大于等于0款项表:列名数据类型约束条件款项编号Char(10)主码顾客号Char(10)外码,参照顾客表的顾客号员工号Char(10)外码,参照员工表的员工号时间Datetime折扣级别Int外码,参照折扣表的折扣级别应收款Dec(6,2)非空实际收款Dec(6,2)非空折扣表:列名数据类型约束条件折扣级别Int主码折扣情况Dec(3,2)项目表:列名数据类型约束条件项目编号Char(10)主码项目名称Char(10)非空部门号Char(10)外码,参照部门表的部门号所在位置Char(10)收费标准Int大于等于0选择表:列名数据类型约束条件顾客号Char(10)联合主码;外码,参照顾客表的顾客号项目号Char(10)联合主码;外码,参照项目表的项目编号发生时间Datetime联合主码备注Varchar(100)顾客表:列名数据类型约束条件顾客编号Char(10)主码姓名Char(10)非空年龄Char(2)性别Char(2)非空身份证号Char(18)非空;唯一级别Int备注Varchar(100)客房表:列名数据类型约束条件客房号Char(10)主码类型编号Char(10)外码,参照类型表的类型编号位置Char(10)非空,唯一状态Char(4)备注Varchar(100)类型表:列名数据类型约束条件类型编号Char(10)主码类型名称Char(10)非空费用Dec(6,2)大于等于0总量Int大于等于0剩余量Int大于等于0预约表:列名数据类型约束条件顾客号Char(10)联合主码;外码,参照顾客表的顾客号客房号Char(10)联合主码;外码,参照客房表的客房号预约时间Datetime联合主码备注Varchar(100)住宿表:列名数据类型约束条件顾客号Char(10)联合主码;外码,参照顾客表的顾客号客房号Char(10)联合主码;外码,参照客房表的客房号入住时间Datetime联合主码离开时间Datetime4.物理设计员工会经常查询自己的工资,在员工表的(工资)创建索引;顾客每次付款时都会要查询具体的折扣详情,在折扣表的(折扣详情)创建索引;顾客选择项目时只会给出项目名称,所以需要经常查询项目名称,在项目表的(项目名称)创建索引;每位顾客消费时会给出身份证,所以经常需要查询身份证对应的顾客号,在顾客表的(身份证号)创建索引;顾客住宿时会给出自己想要的客房类型的名称,所以要经常查询类型名称对应的类型号,在类型表的(类型名称)创建索引;SQL语句createuniqueindexidx_工资on员工(工资)createuniqueindexidx_折扣详情on折扣(折扣详情)createuniqueindexidx_项目名称on项目(项目名称)createuniqueindexidx_身份证号on顾客(身份证号)createuniqueindexidx_类型名称on类型(类型名称)5.数据库实施--创建数据库createdatabase酒店管理系统gouse酒店管理系统go--创建表--创建部门表createtable部门(部门号char(10)primarykey,名称char(10)notnull,部门经理char(10),办公地点char(10),员工数量intcheck(员工数量=0),)go--创建员工表createtable员工(员工号char(10)primarykey,姓名char(10)notnull,性别char(2)notnull,年龄int,工资int,部门号char(10),职务char(10),备注varchar(100),foreignkey(部门号)references部门(部门号))go--创建顾客表createtable顾客(顾客号char(10)primarykey,姓名char(10)notnull,年龄char(2),性别char(2)notnull,身份证号char(18)notnullunique,级别int,备注varchar(100))go--创建类型表createtable类型(类型编号char(10)primarykey,类型名称char(10)notnull,费用dec(6,2)check(费用=0),总量intcheck(总量=0),剩余量intcheck(剩余量=0))go--创建客房表createtable客房(客房号char(10)primarykey,类型编号char(10),位置char(10)notnullunique,状态char(4),备注varchar(100),foreignkey(类型编号)references类型(类型编号))go--折扣表createtable折扣(折扣级别intprimarykey,折扣详情dec(3,2))go--创建款项表createtable款项(款项编号char(10)primarykey,顾客号char(10),员工号char(10),时间datetime,折扣级别int,应收款dec(6,2)notnull,实际收款dec(6,2)notnull,foreignkey(顾客号)references顾客(顾客号),foreignkey(员工号)references员工(员工号),foreignkey(折扣级别)references折扣(折扣级别))go--创建项目表createtable项目(项目编号char(10)primarykey,项目名称char(10)notnull,部门号char(10),所在位置char(10),收费标准intcheck(收费标准=0),foreignkey(部门号)references部门(部门号))go--创建选择表createtable选择(顾客号char(10),项目号char(10),发生时间datetime,备注varchar(100),primarykey(顾客号,项目号,发生时间),foreignkey(顾客号)references顾客(顾客号),foreignkey(项目号)references项目(项目编号))go--创建预约表createtable预约(顾客号char(10),客房号char(10),预约时间datetime,备注varchar(100),primarykey(顾客号,客房号,预约时间),foreignkey(顾客号)references顾客(顾客号),foreignkey(客房号)references客房(客房号))go--创建住宿表createtable住宿(顾客号char(10),客房号char(10),入住时间datetime,离开时间datetime,primarykey(顾客号,客房号,入住时间),foreignkey(顾客号)references顾客(顾客号),foreignkey(客房号)references客房(客房号))6.数据库运行添加部门数据:('bm001','客房部','吴庆宇','B201',20)('bm002','餐饮部','陈啸','A103',10)('bm003','娱乐部','胡展鹏','A401',20)添加员工数据:('yg1001','吴庆宇','男',30,4000,'bm001','部门经理','')('yg1002','徐博雅','女',26,2700,'bm001','普通员工','')('yg2001','陈啸','男',30,3500,'bm002','部门经理','')('yg2002','穆标','男',26,2000,'bm002','普通员工','学徒')('yg3001','胡展鹏','男',31,4000,'bm003','部门经理','')('yg3002','戚倩倩','女',25,3000,'bm003','普通员工','休假中')添加顾客数据:('gk00001','董炎鑫',24,'男','320830199110241215',3,'')('gk00002','李伦',20,'女','34260199511134523',1,'')('gk00003','杨德军',31,'男','140603198402016231',1,'')('gk00004','张秀春',41,'女','320829197405104943',2,'')添加类型数据:('lx001','普通双人间',130,50,20)('lx002','网络单人间',100,30,13)('lx003','大床房',150,50,36)('lx004','豪华套间',420,20,14)添加客房数据:('kf001','lx001','B101','空闲','')('kf002','lx001','B102','有客','')('kf003','lx002','B201','空闲','')('kf004','lx003','B305','空闲','维修中')('kf005','lx004','B404','有客','')添加折扣数据:(1,0.98)(2,0.9)(3,0.8)添加项目数据:('xm001','网吧','bm003','A206',3)('

1 / 27
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功