首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在预订系统中维护“可用住宿”表是一种常见的做法吗?

在预订系统中维护“可用住宿”表是一种常见的做法吗?
EN

Stack Overflow用户
提问于 2010-07-25 16:01:30
回答 3查看 162关注 0票数 2

我在维护一个度假公园的预订系统。我想知道保留一张可用的住宿桌子是不是很常见,可能是这样的:

代码语言:javascript
复制
Acc    AvailableFrom    AvailableTo
1      7/1/2010         7/31/2010
2      7/8/2010         7/15/2010
3      7/15/2010        7/20/2010

因为我觉得这样更容易找到空余的住处。每次预订或更改时,都会更新可用住宿表。

或者这是不是既麻烦又低效?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-07-25 16:03:05

我认为这并不常见;可用性通常是从在特定时间没有预订的事实推断出来的。这样,您就可以始终确保可用性信息与实际预订情况保持一致。

为了方便您自己,您可以创建一个呈现此信息的视图"Availability“。

现在,您将要复制信息,这正是您不希望在数据库中出现的信息,除非您是出于非常具体的、经过深思熟虑的原因才这样做的。

票数 4
EN

Stack Overflow用户

发布于 2010-07-25 16:05:33

如果可能,尽量避免使用这些表。您有一个包含您的房间的表和一个包含预订的相关表。试着用这些桌子来确定空余的房间。

“可用空间”将是数据的重复,而这些数据总是很难维护。

票数 0
EN

Stack Overflow用户

发布于 2010-07-26 05:38:36

我目前正在重新设计一个预订系统,它不会这样做,因为你实际上不需要知道所有可用的时间。

用户有两种方式寻找可用时间:

  1. 他们想要查看所有预订的日历,以获得所有可用时间的直观表示。你不需要显式地查询可用时间。
  2. 他们想要查找特定类型的“物品”在特定时间段的可用性。通常,检查可用性的查询非常简单(简单地检查时间段与预订的重叠),而可用性表不会有太大帮助。

正如其他人指出的那样,如果您同时保留预订和可用时段,则两者之间的同步是一个弱点。对我来说,这是一个过早优化的案例。首先在没有可用性表的情况下构建它,但如果需要,请保留该选项以在以后添加它。最有可能是YAGNI

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3328478

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档