数据库项目酒店管理系统_第1页
数据库项目酒店管理系统_第2页
数据库项目酒店管理系统_第3页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

1、酒店管理系统系别:信息管理系班级:信息 14005姓名:江东流学号: 141202005171. 需求描述一家酒店有多个部门,每个部门拥有自己的部门号、名称、部门 经理、办公地点和一定数量员工。每个员工有员工号,姓名,性别,年龄,工资,部门号,职务等 属性。每个顾客有顾客编号,姓名,年龄,性别,身份证号,级别等属 性,身份证号必须填写且唯一;根据累计消费等途径,将顾客分为不 同的VIP等级,级别对应折扣级别。酒店的客房有不同的种类可供选择, 由唯一的客房号标识, 位置 记录每个房间的位置,状态表示此房间此时的状态,空闲、预约、有相同类型的客房价格一样, 每个类型的客房有一定的总量, 可以 查询

2、剩余的数量以供选择。酒店各部门还提供如KTV网吧、洗衣等额外收费服务。不同项 目价格不同。不同项目在不同地点进行。酒店房间可以预约, 每人每天只能预约一次, 但可以多次更改之 前的预约内容。付款时会产生唯一的款项编号, 每一笔款项由一个员工进行处理, 根据折扣级别给出应收款和实际收款。2.概念结构设计性别姓名员工号员工工资)备注部门号职务年龄员工实体ER图-亠(部门经理 ”名称)办公地点部门号 J 咅部门员工数量部门实体ER图部门号项目名称'i所在位置项目编号 项目收费标准年龄-一 一一姓名一 IT _ 一:*顾客编号 客户_级别顾客实体ER图位置(类型编号i 7""

3、; *-_|客房号)客房客房实体ER图厂一 收费标准类型名称性别_ 一 _身份证号电话状态备注总量剩余量类型编号 类型 -顾客号员工号时间款项编号款项折扣级别应收款实际收款款项实体ER图折扣级别折扣折扣情况折扣实体ER图员工n隶属分类备注预约 时间类型3.逻辑结构设计员工(员工号,姓名,性别,年龄,工资,部门号,职务,备注); 部门(部门号,名称,部门经理,办公地点,员工数量);款项(款项编号,顾客号,员工号,时间,折扣级别,应收款, 实际收款);折扣(折扣级别,折扣情况);项目(项目编号,项目名称,部门号,所在位置,收费标准);选择(顾客号,项目号,发生时间,备注);顾客(顾客编号,姓名,年

4、龄,性别,身份证号,级别,备注);客房(客房号,类型编号,位置,状态,备注);类型(类型编号,类型名称,费用,总量,剩余量);预约(顾客号,客房号,预约时间,备注)住宿(顾客号,客房号,入住时间,离开时间);列名数据类型约束条件员工表:列名数据类型约束条件员工号Char(10)主码姓名Char(10)非空性别Char(2)非空年龄Int工资Int部门号Char(10)外码,参照部门表中的部 门号职务Char(10)备注Varchar(IOO)部门表:列名数据类型约束条件部门号Char(10)主码名称Char(20)非空部门经理Char(10)外码,参照员工表中的姓 名办公地点Char(10)员

5、工数量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)联合主码;

6、外码,参照顾 客表的顾客号项目号Char(10)联合主码;外码,参照项目表的项目编号发生时间Datetime联合主码备注Varchar(IOO)顾客表:列名数据类型约束条件顾客编号Char(1O)主码姓名Char(1O)非空年龄Char(2)性别Char(2)非空身份证号Char(18)非空;唯一级别Int备注Varchar(IOO)客房表:列名数据类型约束条件客房号Char(1O)主码类型编号Char(1O)外码,参照类型表的类型 编号位置Char(1O)非空,唯一状态Char(4)备注Varchar(IOO)类型表:列名数据类型约束条件类型编号Char(1O)主码类型名称Char(1O)非

7、空费用Dec(6,2)大于等于O总量Int大于等于O剩余量Int大于等于O预约表:列名数据类型约束条件顾客号Char(1O)联合主码;外码,参照顾 客表的顾客号客房号Char(1O)联合主码;外码,参照客 房表的客房号预约时间Datetime联合主码备注Varchar(IOO)住宿表:列名数据类型约束条件顾客号Char(10)联合主码;外码,参照顾 客表的顾客号客房号Char(10)联合主码;外码,参照客 房表的客房号入住时间Datetime联合主码离开时间Datetime4. 物理设计员工会经常查询自己的工资,在员工表的 (工资 )创建索引; 顾客每次付款时都会要查询具体的折扣详情,在折扣表

8、的(折扣详情 )创建索引;顾客选择项目时只会给出项目名称,所以需要经常查询项目 名称,在项目表的 (项目名称 ) 创建索引;每位顾客消费时会给出身份证,所以经常需要查询身份证对 应的顾客号,在顾客表的 (身份证号 )创建索引;顾客住宿时会给出自己想要的客房类型的名称,所以要经常 查询类型名称对应的类型号,在类型表的 (类型名称 )创建索引;SQL 语句create unique index idx_工资 on 员工(工资)create unique in dex idx_折 扣详情on 折扣 (折扣详情 )create unique in dex idx_ 项目名称on 项目 (项目名称 )c

9、reate unique in dex idx_ 身份证号on 顾客 (身份证号 )create unique in dex idx_ 类型名称on 类型 (类型名称 )SQLQuwryl.sql .(MSI轮回剑心Hcrea te create create create createindex idx_工资on员工(工资)unique index unique index unique index uni que| indexid匚折扣详情on id丈项目名称on idx_身份证号on idx_类型名称on折扣(折扌|详情) 项目(顶目名称) 顾客身份证号) 类型类型名称)命令已成功完成。

10、部门( 部门号)5. 数据库实施 - 创建数据库 create database 酒店管理系统 go use 酒店管理系统 go - 创建表 - 创建部门表 create table 部门 ( 部门号 char(10) primary key, 名称 char(10) not null, 部门经理 char(10), 办公地点 char(10), 员工数量 int check( 员工数量 >=0), ) go - 创建员工表 create table 员工 ( 员工号 char(10) primary key, 姓名 char(10) not null, 性别 char(2) not n

11、ull, 年龄 int, 工资 int, 部门号 char(10), 职务 char(10), 备注 varchar(100), foreign key ( 部门号 ) references ) go - 创建顾客表 create table 顾客 ( 顾客号 char(10) primary key, 姓名 char(10) not null, 年龄 char(2), 性别 char(2) not null, 身份证号 char(18) not null unique, 级别 int, 备注 varchar(100) ) go - 创建类型表 create table 类型 ( 类型编号 c

12、har(10) primary key,类型(类型编号 )顾客( 顾客号), 员工( 员工号), 折扣(折扣级别)部门( 部门号)类型名称 char(10) not null, 费用 dec(6,2) check( 费用 >=0), 总量 int check( 总量 >=0), 剩余量 int check( 剩余量 >=0) ) go- 创建客房表 create table 客房 ( 客房号 char(10) primary key, 类型编号 char(10), 位置 char(10) not null unique, 状态 char(4), 备注 varchar(100)

13、, foreign key ( 类型编号 ) references ) go- 折扣表create table 折扣 ( 折扣级别 int primary key, 折扣详情 dec(3,2) ) go - 创建款项表 create table 款项 ( 款项编号 char(10) primary key, 顾客号 char(10), 员工号 char(10), 时间 datetime, 折扣级别 int, 应收款 dec(6,2) not null, 实际收款 dec(6,2) not null, foreign key ( 顾客号 ) references foreign key ( 员工

14、号 ) references foreign key ( 折扣级别 )references ) go- 创建项目表 create table 项目 ( 项目编号 char(10) primary key, 项目名称 char(10) not null, 部门号 char(10), 所在位置 char(10), 收费标准 int check( 收费标准 >=0), foreign key ( 部门号 ) references) go - 创建选择表 create table 选择 ( 顾客号 char(10), 项目号 char(10), 发生时间 datetime, 备注 varchar

15、(100), primary key( 顾客号 , 项目号 , 发生时间 ), foreign key ( 顾客号 ) references 顾客( 顾客号), foreign key ( 项目号) references 项目(项目编号 ) ) go - 创建预约表 create table 预约 ( 顾客号 char(10), 客房号 char(10), 预约时间 datetime, 备注 varchar(100), primary key( 顾客号 , 客房号 , 预约时间 ), foreign key ( 顾客号 ) references 顾客( 顾客号), foreign key (

16、客房号 ) references 客房( 客房号) ) go- 创建住宿表 create table 住宿 ( 顾客号 char(10), 客房号 char(10), 入住时间 datetime, 离开时间 datetime, primary key( 顾客号 , 客房号 , 入住时间 ), foreign key ( 顾客号 ) references 顾客( 顾客号), foreign key ( 客房号 ) references 客房( 客房号) )SQLQuery8.sql回鈔b (54)尸 x |ci'eale database 酒IE管理系统 gouse洎店菅埋系统Fl创逮羔

17、一创建部门表hcreate table 民0( 部门号char(10) priri4U*y key. 名称 char 10) not null, 部门经堆char(10).办公堆点char(10), 员工数華int chck(员工数爭0).1)go一创建员工表create table (§、工( 员工号 ctur (10) “Ixiary key.it名 eliar 10) not null, 木土 fill a 0 » " 1100% 命令己成功芫成6. 数据库运行添加部门数据:('bmOO1','客房部','吴庆宇

18、9;,'B201',20) ('bm002','餐饮部','陈啸','A103',10) ('bm003','娱乐部','胡展鹏','A401',20)添加员工数据:('yg1001',吴庆宇','男',30,4000,'bm001','部门经理','')('yg1002',徐博雅','女',26,2700,'bm00

19、1','普通员工','')('yg2001','陈啸','男',30,3500,'bm002','部门经理','') ('yg2002',穆标','男',26,2000,'bm002','普通员工','学徒') ('yg3001',胡展鹏','男',31,4000,'bm003','部门经理','

20、;') ('yg3002',戚倩倩','女',25,3000,'bm003','普通员工','休假中')添加顾客数据:('gk00001','董炎鑫',24,'男','#39;,3,J('gk00002','李伦',20,'女','34260199511134523,1,'')('gk00003',杨德军',31

21、,'男','#39;,1,'')('gk00004','张秀春',41,'女','#39;,2,'')添加类型数据:('1x001','普通双人间',130,50,20)('1x002','网络单人间',100,30,13)('1x003','大床房',150,50,36)('1x004','

22、;豪华套间',420,20,14)添加客房数据:('kf001','lx001','B101','空闲','')('kf002','lx001','B102','有客','')('kf003','lx002','B201','空闲','')('kf004','lx003','B305','空闲&

23、#39;,'维修中')('kf005','lx004','B404','有客','')添加折扣数据:(1,0.98)(2,0.9)(3,0.8)添加项目数据:('xm001','网吧','bm003','A206',3) ('xm002','KTV','bm003','A501',90) ('xm003','洗衣','bm001

24、9;,'B105',10)款项、选择、预约数据随业务的进行由员工添加SQLQueryLsqlX IInsert insei-1 InsertInsertInto intc 1 rtoIntova Lues (' kf 00 T * 1屈 tHlFlOYJ 肓容I" values (' kfOOS* lxC02' , ' B201'? T' "J values(' kfOO</ l7<ir3' . ' E3OF J 空闲建槪中T valuwC kKX疔ThOMB4(H'

25、有客 U榛加折扣数#hinsert Into 折扣Insert into 折扣tn sett into 折扣ra Lubs (1 '站折'. raLues 2,'見斤.values(3,' 3";i'號加琐目數据,insert into 顶目 insert intc 顶吕 iiLi>?rt IntL 血目values (' xdDOr .,网吧,'bcnOOj".' A206* 3 values (r XE1Q021,1KTV' ' bmOOQ1施,勺 values (r xtfOCOV

26、洗衣'.'baDOf/BlDS1 , 10)一蕊项*辻禅.预罚敷器超业备的主行由员工海如1DD %-_1消息(1 F堂第输(汙登宪葩(讦即徒飾:(1 f亍曼毙响:(1勞爱議对:<1卜爭黒响模拟业务实例1:新客户沈慧预约 kf003号客房(沈慧,女,20岁insert into 顾客 values ( gk00C沈慧',20,女'' ,1,g6insert into 预约 values ( gk00005 ' , ' kf00312-06'2p15&

27、#39;update 客房 set 状态=预约'where客房号='kf003 'mart into樹 也 akCOO側.1 '-:-nsert irto 稱轴 vs lues wfcOIlOOlS' . ' kf L'13' r ' 2.DE- f '專Mset售粤岂J tn. g*.脈(i(I(i实例2:员工徐博雅离职,删除其员工数据delete from 员工 where 姓名='徐博雅'SQLQuery3.5£|l(5珊 xdelete from员工inhere姓名='輔苹

28、也|100% -ii SfeCL拧受壽响实例3:查询年龄小于等于30岁的男性顾客的姓名、身份证号select姓名,身份证号from顾客where性别='男'an年龄=30EQLQuerygsql -轮回刽心;:53)* X l_se lect 姓名,身粉证号from I® 菩where性别='男'and年龄U30100 骗-口茫黑为消息号份证号1薑炙秦320630159110241215UHIII mjiibF实例4:顾客李伦选择 KTV项目(李伦,34260199511134523) insert into 选择 select 顾客号,项目编号,&#

29、39;2015-12-1',''from顾客,项目where 身份证号='34260199511134523' and 项目名称='KTV'goselect * from选择where 顾客号=(select 顾客号 from 顾客 where 身份证号='34260199511134523')and项目号=(select项目编号 from 项目 where项目名称='KTV')and 发生时间='2015-12-1'SOLQuerylsql -./I4S曜叵眦茫內Jr zert irD T

30、& 母 I ec 顾密号 币吕编兮'2: 15-12-1 .'from协喜琐目wh-sr 2供也号=-i2l:汀:卫匕主称='kTT'SOselect *in in UJtwhtr«.阳宮号select刃営号from闪宫wher«身粉证号31词19吓IL5擒: I IF目耳 卩1一 r顶宵弔产:rI颈目-fir- -睛冃名*; ' I"''uid 塞主时囘2015 12-1'100 -二空里J启惠函杏弓 前目号 崔生时1司看注1; ckMJDOZ : nCiDZ 2D15-1E-Q1 00:0

31、0:00. ODDJ W F F F Jl实例5:即实例4之后,李伦结账付款,由员工戚倩倩处理insert into款项select kxOOOOl'顾客号,员工号,'2015-12-1',折扣级别,收费标准,收费标准*折扣详情from顾客,项目,员工折扣where身份证号='34260199511134523'and项目名称='KTV' and员工.姓名='戚倩倩'anc级别=折扣级别goselect *from款项where 款项编号='kx00001'SQLQueryd.Lql -.一乂!(6皿|31

32、 心扫邛* K .-.instrs intc.zeLct ' i J X'.匚.颐容孕-员上号L_ 1.-id. S .牡芻标堆.收犬标桂I折扎lit惜iron检客戏目,耳工,折扣.如沁342&01M5L113452S' and瑁目雪鄆-KTb 口tid员工 姓名廉AHT 血1竦別-折扣損别aoIl UH氟顶tatrt 脳加吕'k.c-jl:'-K)r|10)% +塔可j弟口週世更_耳言亏 頁工揖 HR折扣裁刑应籾試貪斥牧裁1 icaODOOl j bJcDODCQ ygDCQ 2D15-12-0L 00:00:00.000 «.0 K

33、.Z7.数据库安全性数据库管理员以 Windows身份验证登录,不再另外创建登录名 为员工、经理和顾客分别创建一个登录名,例如:为员工、经理和顾客分别创建一个用户,对应登录名,例如:U囱曄用尸-新棒迭Ji贡二攔有的笑构用户癸型迫:带登冠右的兀L用-用尸窖H:;理按诵寻KSIStl-ErFRE5S 连捋;回剁心讲虔授予权限 授予顾客,对项目表和类型表的查询权限grant select on 项目 to 顾客grant select on 类型 to 顾客 授予员工,对员工表的查、对款项表的增查、对选择表、顾客表、客房表、预约 表、住宿表的增删改查、对类型表的改查权限grant select on 员工 to 员工grant insert,select on 款项 to 员工grant insert,delete,update,select on 选择 to 员工 grant insert,delete,update,select on 顾客 to 员工 grant insert,delete,update,select

温馨提示

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

评论

0/150

提交评论