酒店管理系统数据库课程设计论文(编辑修改稿)内容摘要:

息函数依赖集 {流水号 → 姓名, 流水号 → 身份证 号,流水号 → 年龄,流水号 → 餐厅消费额, 流水号 → 送餐消费额, 流水号 → 入住天数, 流水号 → 入住 房间号 } 图 24 全局 ER 图 13 级软工专业 3 班数据库应用系统课程设计课程论文 12 预订( 预订编号 ,预订客户姓名,预订客户电话,预订房间号,预定房间类型,预订房间单价) 预订函数依赖集 {预订编号 → 预订客户姓名, 预订编号 → 预订客户电话, 预订编号 → 预订房间号, 预订编号 → 预定房间类型, 预订编号 → 预订房间单价 } 退订( 退订编号 ,退订客户姓名,客户电话,房间号,房间类型, 房间单价) 退订函数依赖集 {退订编号 → 预订客户姓名, 退订编号 → 退 订客户电话, 退订编号 → 房间号, 编号 → 预定房间类型, 编号 → 预订房间单价 } 退房结账( 结账单编号 , 房客流水号 , 结账总金额) 退房结账函数依赖集 {结账单编号、房客流水号→结账总金额 } 清洁单( 清洁单编号 ,清洁房间号) 清洁单函数依赖集 {清洁单编号 → 清洁房间号 } 送餐单( 送餐单编号 ,下单时间, 房客流水 号,预计送达时间) 送餐单函数依赖集 {送餐单编号→ 下单时间, 送餐单编号→房客流水 号, 送餐单编号→ 预计送达时间 } 送餐消费单( 送餐结账编号 , 送餐单编号, 消费结算时间,餐品总额, 房客流水 号) 送餐消费单函数依赖集 {送餐结账编号→ 消费结算时间, 送餐结账编号→送餐单编号,送餐结账编号→ 餐品总额, 送餐结账编号→房客流水 号 } 点餐单( 点餐单编号 , 餐桌号 ,点餐时间 ,房客流水 号) 点餐单函数依赖集 {点餐单编号→餐桌号,点餐单编号→点餐时间,点餐单编号→房客流水 号 } 房客消费单( 房客消费单编号 , 点餐单编号 ,结账时间,餐品总额 ,房客流水号 ) 房客消费单函数依赖集 {房客消费单编号→点餐单编 号, 房客消费单编号→ 结账时间, 房客消费单编号→ 餐品总额 ,房客消费单编号→房客流水号 } 餐品( 餐品编号 , 餐品名, 餐品单价) 餐品函数依赖集 {餐品编号→餐品单价 } 订单细则( 点餐单编号 , 餐品编号 ,餐品数量) 订单细则函数依赖集 {点餐单编号 餐品编号 → 餐品数量 } 关系模式规范化处理 根据 F, 可以得出关系“订单细则”不满足 3NF,但是依据实际需要, 2NF 即13 级软工专业 3 班数据库应用系统课程设计课程论文 13 可。 用户子模式建立 房间信息( 房间号 ,房间类型,房间单价,房间清洁情况) 房客信息( 房客流水号 , 姓名 , 餐厅消费额,送餐消费额,入住天数, 入住房间号) 点餐单( 点餐单编号 , 餐桌号 ,点餐时间 ,房客流水 号) 房客消费单( 房客消费单编号 , 点餐单编号 ,结账时间,餐品总额 ,房客流水号) 餐品( 餐品编号 , 餐品名, 餐品单价) 订单细则( 点餐单编号 , 餐品编号 ,餐品数量) 关系模式逻辑结构定义 表 21 酒店管理系统关系模式汇总表 关系模式名称 含义 备注 Room 房间信息 附表 1 Customer 顾客信息 附表 2 Lodger 房客详细信息 附表 3 Reservation 预订详细记录 附表 4 Unsubscribe 退订详细记录 附表 5 CheckOut 退房结账记录 附表 6 CleanOrder 清洁单记录 附表 7 MealsOnWheels 送餐单记录 附表 8 MOWBill 送餐消费单记录 附表 9 MealOrder 点餐单记录 附表 10 LodgerBill 房客消费单记录 附表 11 Food 餐品信息 附表 12 Order 订单明细 附表 13 3. 数据库物理设计 索引① 索引名称:房客查询 索引类型: 聚簇索引 13 级软工专业 3 班数据库应用系统课程设计课程论文 14 索引功能:快速查询入住房间为 XXX 的房客 4.数据库实施与测试 SQL Server 2020数据库实施 与测试 数据库及数据库对象建立 表: Room Customer Lodger Reservation Unsubscribe CheckOut CleanOrder MealsOnWheels MOWBill MealOrder LodgerBill Food Order ( SQL 语句见附录 1) 视图: Room_view Lodger_view MealOrder_view LodgerBill_view Food_view OrderDetail_view ( SQL 语句见附录 2) 13 级软工专业 3 班数据库应用系统课程设计课程论文 15 索引: PK_Lodger 存储过程: PROC_INSERT_Lodger PROC_INSERT_Reservation PROC_INSERT_Unsubscribe PROC_INSERT_MealOrder PROC_INSERT_MoW PROC_INSERT_Orderdetail ( SQL 语句见附录 3) 触发器: OrderDetailInsert on OrderDetail OrderDetailInser_2 on OrderDetail LodgerCheckOut on Lodger CheckBill1 on LodgerBill CheckBill2 on MoWBill ( SQL 语句见附录 4) 数据入库 数据库测试 一、存储过程测试 Exec PROC_INSERT_Lodger 39。 02139。 ,39。 胡亚娟 39。 ,39。 6137411974120550306639。 ,41,0,0,1,39。 30639。 结果: Lodger 表: CheckOut 表: 13 级软工专业 3 班数据库应用系统课程设计课程论文 16 二、触发器测试 更新 OrderDetail 表后 LodgerBill 自动更新数据: MoWBill 表自动更新数据: Lodger 表自动更新数据: 13 级软工专业 3 班数据库应用系统课程设计课程论文 17 CheckOut 表自动更新数据: Oracle数据库实施 与测试 数据库及数据库对象建立 表: Room 13 级软工专业 3 班数据库应用系统课程设计课程论文 18 Customer Lodger Reservation Unsubscribe CheckOut CleanOrder MealsOnWheels MOWBill MealOrder LodgerBill Food Order ( SQL 语句见附录 5) 视图: Room_view Lodger_view MealOrder_view LodgerBill_view Food_view OrderDetail_view 索引: PK_Lodger 存储过程: PROC_INSERT_Lodger PROC_INSERT_Reservation PROC_INSERT_Unsubscribe PROC_INSERT_MealOrder PROC_INSERT_MoW 13 级软工专业 3 班数据库应用系统课程设计课程论文 19 PROC_INSERT_Orderdetail ( SQL 语句见附录 6) 触发器: OrderDetailInsert on OrderDetail OrderDetailInser_2 on OrderDetail LodgerCheckOut on Lodger CheckBill1 on LodgerBill CheckBill2 on MoWBill ( SQL 语句见附录 7) 数据入库 数据库测试 右键 proc_insert_lodger 选择 test ,测试数据为 39。 02139。 ,39。 胡亚娟39。 ,39。 6137411974120550306639。 ,41,0,0,1,39。 30639。 Lodger 表成功更新: 5.总结 一、看似简单,其实不然 13 级软工专业 3 班数据库应用系统课程设计课程论文 20 以前没有过课程设计的经验,作为第一次课程设计课,我抱着试试看的态度去写,一开始看了只有这么几个模块是心里挺高兴的,但是当我真正地去把一个操作写成功时,很多意想不到的情况发生了。 有时候会为了一个操作不能调试成功而整个晚上都不能去安心做其他的作业。 二、冷静沉着、兢兢业业 编程是一个很繁琐的过程,要考虑到很多错误转移情况,在这期间会有很多以前不曾想过的问题出现,次数多了,不免会有觉得做不下去的感觉。 但是我从中发现,只要一步一步调试、静下心来看待问题,再复杂再微小的问题都会迎刃而解,当一个程序被调试出来时,那时的 快乐相比与任何困难都值得的。 三、立足程序、回归书本 在着手写程序时觉得思路一片混乱,无意间出现的问题会不知道怎么解决。 这时,需要回归书本,书本是前人总结的经验,几乎所有情况都会有解决方法。 只有把书本“吃透”,在遇到问题是才会反应快。 最后我要感谢我的同窗同学,在此次课程设计过程中与他们探讨深究,使我受益颇多,在此,我表示衷心的感谢。 6.附录 附录 1 create table Room (RoomNo varchar(10) not null, RoomType varchar(10), RoomPrice float, CleanCondition varchar(10), primary key (RoomNo))。 create table Customer (Name varchar(20) not null, IDNo varchar(20) not null, Age int not null, primary key (IDNo))。 create table Lodger (CtmNo varchar(10) not null primary key, Name varchar(20) not null, 13 级软工专业 3 班数据库应用系统课程设计课程论文 21 IDNo varchar(20) not null, Age int, DiningCost float, MoWCost float, Days int, RoomNo varchar(10), FOREIGN KEY (IDNo) REFERENCES Customer(IDNo), FOREIGN KEY (RoomNo) REFERENCES Room(RoomNo), check (Age=18))。 create table Reservation (RNo varchar(10) not null primary key, RName varchar(20) not null, RPhone varchar(20), RoomNo varchar(10) not null, RoomType varchar(10), RoomPrice float, FOREIGN KEY (RoomNo) REFERENCES Room(RoomNo))。 create table Unsubscribe (DNo varchar(10) not null primary key, DName varchar(20) not null, DPhone varchar(20), RoomNo varchar(10) not null, RoomType varchar(10), RoomPrice float, FOREIGN KEY (RoomNo) REFERENCES Room(RoomNo))。 create table CheckOut (CheckOutNo varchar(10) not null primary key, CtmNo varchar(10) not null, CheckOutTotal float, FOREIGN KEY (CtmNo) REFERENCES Lodger(CtmNo))。 create table CleanOrder (CleanOrderNo varchar(10) not null, RoomNo varchar(10) not null, FOREIGN KEY (RoomNo) REFERENCES Room(RoomNo))。 create table MealsOnWheels 13 级软工专业 3 班数据库应用系统课程设计课程论文 22 (MoWNo varchar(10) not null primary key, MoWOrderTime smalldatetime,。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。