如何在mysql数据库中管理酒店预订系统的库存表

时间:2015-12-12 11:45:59

标签: php mysql database database-design

enter image description here
您正在开发酒店预订系统。管理员可以为每个酒店添加多个酒店和多个房间。
但是现在我陷入了库存管理。对于每个房间,将有3种类型的库存

  1. 主库存:此处管理员可以为周日至周六的特定类型的房间(例如:套房)添加可用空间数量。每天的可用房间数量将有所不同。
  2. 定期广告资源:此管理员可以在这些日期之间选择开始日期和结束日期以及可用房间数量。
  3. 每日广告资源:此管理员可在此特定日期选择可用房间的日期和数量。
  4. 库存选择的优先顺序为3 - > 2 - > 1. 即。当用户在网站上选择日期并搜索酒店时。首先检查每日广告资源,如果找到每日广告资源,那么其对用户要求的匹配将继续进行。
    否则,如果没有每日库存,那么将检查定期库存,如果未找到定期库存,则将检查主库存
    每个房间都有一个主库存,但定期和每日库存是可选的。在主库存中,您可以从周日到周六提供可用的房间,即。一周7天。定期库存也是如此。

    现在我正试图像这样实现它

    房间桌

    ID integer
    HOTEL_ID integer
    ROOM_NAME varchar
    INV_SUN integer
    INV_MON integer
    INV_TUE integer
    .
    .
    INV_SAT integer
    PERIODIC_STAR_DATE Date
    PERIODIC_END_DATE Date
    PERIODIC_SUN integer
    PERIODIC_MON integer
    .
    .
    PERIODIC_SAT integer
    

    我不知道我跟随的方法是否正确,我不知道如何管理每日库存。 截至目前,搜索酒店的可用性非常困难。
    请告诉我如何以更好的方式重新设计数据库。

1 个答案:

答案 0 :(得分:3)

这是你的答案:
enter image description here 这种设计表明:

  1. 有很多酒店
  2. 每家酒店都有很多房型,例如套房,2张床,3张床等。
  3. 每种房型都包含具有isBooked整数的房间,即0或1
  4. 最后有预订表,存储特定酒店的不同房间数据
  5. 现在您可以进行查询,例如

    1. 预订酒店的房间类型
    2. 预订了多少个房间
    3. 从此日期到此日期,特定酒店预订了哪些客房
    4. 有多少房间是空的
    5. 哪种类型的酒店空置或预留
    6. 等等等等。您可以进行大量查询,但这4个表格足以满足您的所有要求

      <强>更新

      1. 管理员表具有不同的管理员角色。每位管理员将管理酒店,房间类型,房间和预订 的更新-2
        enter image description here

        更新-3:
        enter image description here