基于SQL数据库的酒店管理系统
一、数据库设计1需求分析客房的预定可以通过网络进行预定预定修改取消预订。客房管理预定管理、客房查询、设置房态、开房、换房、续住、退房等管理。员工管理: 员工修改信息、人员调配。账务管理主要是处理酒店的日常的账务报表收入报表前台收入明细表、现付收入明细表、消费报表等。顾客管理收集旅客入住评价记录顾客身份信息。2数据库概念结构设计(1)局部ER图旅客信息:客房信息:员工信息经理信息餐厅信息(2)整体ER图3数据库逻辑结构设计1关系模式旅客信息旅客姓名性别身份证号房间号餐厅名字客房信息房间号房间类型房价员工号餐厅信息餐厅名字餐厅电话经理姓名经理经理姓名经理电话员工员工号员工姓名经理姓名2关系模式的规范化旅客信息的主码是旅客身份证号其他非主属性不完全依赖于身份证号并且不存在传递函数依赖因此旅客信息不属于三范式客房信息的主码是房间号其他非主属性不完全依赖于房间号并且不存在传递函数依赖因此客房信息不属于三范式餐厅信息的主码是餐厅名字其他非主属性不完全依赖于餐厅名字并且不存在传递函数依赖因此餐厅信息不属于三范式经理信息的主码是经理姓名其他非主属性都完全依赖于经理姓名并且存在传递函数依赖因此经理信息属于三范式员工信息的主码是旅客员工号其他非主属性不完全依赖于员工号并且不存在传递函数依赖因此员工信息不属于三范式3数据库中表结构旅客信息表列名数据类型可否为空主键外键说明LknameVarchar(20)否NN旅客姓名LksexVarchar(5)否NN旅客性别Lkidchar(20)否YN身份证号CtnameVarchar(20)否NN餐厅名字房间信息表列名数据类型可否为空主键外键说明Roomidchar(20)否YN酒店房间号RoomlxVarchar(16)否NN房间类型RoomfjVarchar(16)否NN房价YgidVarchar(16)否NN员工号员工表列名数据类型可否为空主键外键说明YgnameVarchar(20)否NN员工姓名Ygidchar(5)否YN员工号JlnameVarchar(20)否NN经理姓名餐厅信息表列名数据类型可否为空主键外键说明CtnameVarchar(20)否YN餐厅名字CtphVarchar(5)否NN餐厅电话JlnameVarchar(20)否NN经理姓名经理信息表列名数据类型可否为空主键外键说明Jlnamechar(20)否YN经理姓名JlphVarchar(20)否NN经理电话4数据库中的视图视图一 名称 功能定义代码旅客信息表CREATE VIEW CustomerView (旅客姓名,旅客性别,身份证号餐厅名字)ASSELECT Lkname, Lksex, LkidCtnameFROM Customer视图二 名称 功能定义代码CREATE VIEW 房间信息 (房间号,房间类型,房间价格员工号)ASSELECT RoomID, RoomlxRoomfjYgidFROM Room三、系统操作说明及运行结果1.创建数据库及表1创建酒店管理系统数据库代码create database jdglxtgo2客房信息表create table kfxxb(roomid char(5),roomlx char(16) not null,roomfj varchar(16) not null,ygid varchar(16) not null,primary key(roomid)3旅客信息表create table lkxxb(lkname char(20) not null,lksex char(5)not null,lkid char(20)not null,ctname varchar(20)not nullprimary key(lkid)4餐厅信息表create table ctxxb(ctname char(20),ctph varchar(5),jlname varchar(20)primary key(ctname)5员工表create table ygxxb(ygid char(10),ygname varchar(20),jlname varchar(20)primary key(ygid))6经理信息表create table jjxxb(jlname char(20) primary key,Jlth varchar(20) not null)2.数据添加1–向客房信息表中插入数据代码insert into kfxxbvalues(‘2008’,‘标间’,‘90’,‘020101’),(‘2009’,‘标间’,‘90’,‘020102’),(‘2010’,‘标间’,‘90’,‘020103’),(‘3007’,‘特价’,‘70’,‘020104’),(‘3008’,‘特价’,‘70’,‘020105’),(‘3009’,‘特价’,‘80’,‘020106’),(‘3010’,‘单人间’,‘80’,‘020107’),(‘4001’,‘单人间’,‘80’,‘020109’),(‘4002’,‘三人间’,‘120’,‘020110’),(‘4003’,‘三人间’,‘120’,‘020111’)2–向旅客信息表中插入数据代码insert into lkxxbvalues(‘张三’,‘男’,‘123456789012345678’,‘好运来’),(‘李四’,‘男’,‘012345678912345678’,‘好运来’),(‘王五’,‘男’,‘987654321012345678’,‘好运来’),(‘张强’,‘男’,‘951564621012345678’,‘好运来’),(‘陈七’,‘女’,‘654987721012345678’,‘好运来’),(‘马六’,‘男’,‘220125199902253645’,‘好运来’),(‘李红’,‘女’,‘987654321012347128’,‘好运来’),(‘张杰’,‘男’,‘220228419650325645’,‘好运来’),(‘陈军’,‘男’,‘568941723849268622’,‘好运来’) ,(‘王久’,‘女’,‘025849613546820056’,‘好运来’)3–向餐厅信息表中插入数据代码insert into ctxxbvalues(‘好运来’,‘15356412471’,‘秋山’)(‘好运一’,‘15356412472’,‘秋以’)(‘好运二’,‘15356412473’,‘秋和’)(‘好运三’,‘15356412474’,‘秋三’)(‘好运四’,‘15356412475’,‘秋山四’)(‘好运五’,‘15356412476’,‘秋五’)(‘好运六’,‘15356412477’,‘秋六’)(‘好运七’,‘15356412478’,‘秋七’)(‘好运八’,‘15356412479’,‘秋吧’)(‘好运九’,‘15356412480’,‘秋就’)4–向员工信息表中插入数据代码insert into ygxxbvalues(‘王朝阳’,‘010201’,‘秋山’),(‘张向荣’,‘010202’,‘秋山’),(‘李乐’,‘010203’,‘秋山’),(‘田达’,‘010204’,‘秋山’),(周博 ,‘010205’,‘秋山’),(‘田家’,‘010206’,‘秋山’),(伊大 ,‘010207’,‘秋山’),(周婷婷 ,‘010208’,‘秋山’),(‘陈眉丽’,‘010209’,‘秋山’),(犹大冬 ,‘010210’,‘秋山’)5–向经理信息表插入数据代码insert into jjxxbvalues(‘秋山’,‘15489762450’)(‘秋以’,‘15489762451’)(‘秋和’,‘15489762452’)(‘秋三’,‘15489762453’)(‘秋山四’,‘15489762454’)(‘秋五’,‘15489762455’)(‘秋六’,‘15489762456’)(‘秋七’,‘15489762457’)(‘秋吧’,‘15489762458’)(‘秋就’,‘15489762459’)3.数据修改–修改客房信息表表中房间号2008的房价1代码updatekfxxbsetroomfj‘100’whereroomid‘2008’–修改客房信息表中update kfxxbsetroomfj‘150’whereroomid‘4002’2餐厅信息表–修改餐厅信息表中好运来的电话字updatectxxbsetctph‘19823480345’wherectname‘好运来’3旅客信息表–修改旅客信息表中张三的身份证号updatelkxxbsetlkid‘220228474383978544’whereikname‘张三’–修改旅客信息表中李四的性别updatellxxbsetlkid‘女’whereiknamee‘李四’4员工信息表–修改员工信息表中王朝阳的员工号updateygxxbsetygid‘010220’whereygname‘王朝阳’–修改员工信息表中田家的员工号updateygxxbsetygid‘010221’whereygname‘田家’5经理信息表–修改经理信息表中经理秋山电话updatejjxxbsetctph‘18674320384’wherejlname‘秋山’–修改经理信息表中经理秋五电话updatejjxxbsetctph‘18674320311’wherejlname‘秋五’4.数据删除1旅客信息表–删除旅客信息表中姓名为王五的信息deletefromlkxxbwherelkname‘王五’–删除旅客信息表中陈七的身份信息deletefromlkxxbwherelkname‘陈七’2客房信息表–删除客房信息表中编号2009的信息deletefromkfxxbwherekfid‘2009’–删除客房信息表中编号4000的信息deletefromkfxxbwherekfid‘4000’3员工信息表–删除员工信息表中李乐的基本信息deletefromygxxbwhereygname‘李乐’–删除员工信息表中伊大的基本信息deletefromygxxbwhereygname‘伊大’4餐厅信息表–删除餐厅信息表中好运五的基本信息deletefromctxxbwherectname‘好运五’–删除餐厅信息表中好运六的基本信息deletefromctxxbwherectname‘好运六’5经理信息表–删除经理信息表中秋山四的基本信息deletefromjlxxbwhere jlname ‘秋山四’–删除经理信息表中秋五的基本信息deletefromjlxxbwhere jlname ‘秋五’5.数据查询1查询旅客信息表的所有信息单表查询代码select*from lkxxb截图2查询张强的员工号多表查询selectygidfromlkxxb,ygxxbwhereygxxb.ygidlkxxb.lknameandygxxb.ygid‘张强’3查询旅客信息表中所有旅客selectlknamefromlkxxb4查询员工信息表中所有员工编号selectygid,count(*)asamountfromygxxbgroupbyygid5将所有员工编号按照降序排列将查询结果排序代码selectygidfromygxxborderbyygiddesc6查询客房信息表视图查询代码select*fromkfxxb7查询员排名最小的员工号代码selectmin(ygid)fromygxxb8查询男女人人数(分组查询)代码selectlksex,count(*)as人数fromlkxxbgroupbylksex9查询价格大于100的入住客房房间号和价格单表查询代码selectroomid,pricefromkfxxbwhereprice10010查询所有房价小于100的房间号select roomfj,roomidfrom kfxxbwhere roomfj100create database jdglxt go --客房信息表 create table kfxxb (roomid char(5) primary key, roomlx char(16) not null, roomfj varchar(16) not null, ygid varchar(16) not null ) --旅客信息表 create table lkxxb (lkname char(20) not null, lksex char(5)not null, lkid char(20)not null, ctname varchar(20)not null, primary key(lkid) ) --餐厅信息表 create table ctxxb (ctname char(20), ctph varchar(20), jlname varchar(20), primary key(ctname) ) --员工表 create table ygxxb (ygid char(10) primary key, ygname varchar(20), jlname char(20) ) --经理信息表 create table jjxxb (jlname char(20) primary key, Jlth varchar(20) not null ) --插入数据 --向客房信息表中插入数据 insert into kfxxb values(1010,标间,90,010101), (1011,标间,90,010102), (1012,标间,90,010103), (1013,特价,70,010104), (1014,特价,70,010105), (1015,特价,80,010106), (1016,单人间,80,010107), (1017,单人间,80,010109), (1018,三人间,120,010110), (1019,三人间,120,010111) --3向旅客信息表中插入数据 insert into lkxxb values(尚福乐,男,211322198509260317,好运来), (岳朋,女,211481198401154441,好运来), (赵晓强,男,987654321012345678,好运来), (杨思剑,女,522324197508045647,好运来), (柏朝林,男,510921591208435011,好运来), (李家发,男,52262619800410121X,好运来), (李科,女,522324197309155226,好运来), (钱齐高,男,433026196612172414,好运来), (李关福,女,522422610421281489,好运来) , (段小平,男,510226196602284031,好运来) --7向餐厅信息表中插入数据 insert into ctxxb values(好运来,15356412471,秋山) --8向员工信息表中插入数据 insert into ygxxb values(王阳,020201,秋山), (张荣,020202,秋山), (李向乐,020203,秋山), (王一达,020204,秋山), (周天博 ,020205,秋山), (田林,020206,秋山), (伊大金 ,020207,秋山), (周婷 ,020208,秋山), (陈丽,020209,秋山), (犹大冬 ,020210,秋山) --9.向经理信息表插入数据 insert into jjxxb values(秋叶,15187964521) update kfxxb set roomfj100 where roomid2008 update kfxxb set roomfj150 where roomid4002 update ctxxb set ctph19823480345 where ctname好运来 update lkxxb set lkid220228474383978544 where lkname张三 select*from lkxxb select lkname from lkxxb select ygid,count(*) as amount from ygxxb group by ygid select ygid from ygxxb order by ygid desc select*from kfxxb select min(ygid) from ygxxb select lksex,count(*) as 人数 from lkxxb group by lksex select roomid,roomfj from kfxxb where roomfj100 select roomfj,roomid from kfxxb where roomfj100 select ygname ygid from ygxxb order by ygid desc
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2413777.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!