Spi*_*idE 2 mysql schema system
我即将开发一个在线酒店预订系统...使用php和mysql ...我对我当前的数据库架构和业务逻辑有所怀疑,以获得两个特定日期之间免费房间的酒店...
有谁知道某种教程,我可以了解酒店预订架构和应该在系统中使用的业务逻辑...?
谢谢你的建议......
编辑:我已经弄明白了大部分的逻辑......我不清楚的一点是以下几点......
如果用户在两个特定日期之间选择特定酒店中的多个房间,我如何在下面的预订表中表示......?
表:预订
Field 1 : reservation_id
Field 2 : room_id
Field 3 : no. of Rooms
Field 4 : check-in date
Field 5 : check-out date
Field 6 : Customer id
Run Code Online (Sandbox Code Playgroud)如何根据预订表和下列房间表查看两个日期之间的房间?
表:房间
Field 1 : hotel_id
Field 2 : room_id
Field 3 : total_num_rooms
Run Code Online (Sandbox Code Playgroud)注意:数据库包含多个酒店...因此,用户可以选择一个城市,并在两个特定日期之间查找该地区酒店的房间...
另外说如果酒店中有10个特定类型的房间号码,我只需要显示在该特定时间段内免费的房间数量.....
作为一般思想,应用分而治之.总是.
例如,为什么您认为特定客户应该能够在特定时间段内拥有"房间数量"?例如,如果我出差并让我的家人在几天后跟着我,那该怎么办?现在,在给定的时间跨度内,房间数量不再是恒定的.
那真的不重要吗?没错,你可以为同一个客户添加另一个条目.但话说回来,你可以在第一时间做到这一点并简化你的逻辑,说客户一次只能有一个房间,但是可以有一些行在给定客户的时间跨度上创建重叠.
此外,请确保您分开Reservation和a ReservationRequest.后者由我认为的一组预订组成 - 因为我希望我和我的家人有这个空间,两个标准必须匹配.
只是一些想法.请注意,这是象牙塔的方法,它可能会导致大量过度的解决方案.在RealWorld(TM)中,坚持Marcs的建议:分析实际的客户需求.如果处理1%的请求会使开发时间增加200%,那么他不会喜欢(或需要)它,反之亦然.