gpt4 book ai didi

database - 如何防止覆盖共享约会簿中的记录?

转载 作者:搜寻专家 更新时间:2023-10-30 23:41:12 24 4
gpt4 key购买 nike

PostgreSQL 9.3

我正在写一本标准的约会书。这本书将以每 15:00 分钟的间隔有三列,并且会有多个客户从不同的位置同时写入。

如果两个用户 A 和 B 同时进行约会,如何防止用户 B 覆盖用户 A 的约会? (也就是说,一旦用户 A 有写了一个约会,用户 B 的信息将是过时的——他在尝试保存约会记录之前不会知道用户 A 做了什么)。如果用户 B 想要使用的约会时间已经分配,​​我希望通知用户 B 它不可用并且不覆盖用户 A。

我确信这是一个基本且常见的问题,但我无法解决这个问题。

感谢任何帮助、建议或引用。

最佳答案

例如,如果您存储约会

id, customer_id, 时间
1 ,32, 2016-03-10 10:15:00
...

只需在时间列上添加一个唯一索引。然后,如果您尝试同时插入一行,则会出错。如果您想同时允许超过 1 个预订,您可以添加一个 time_slot 列并将其包含在索引中。

id, customer_id, time, time_slot
1 ,32, 2016-03-10 10:15:00, 1
2 ,15, 2016-03-10 10:15:00, 2

create unique index appointments_time_timeslot_idx on appointments (time, time_slot);

关于database - 如何防止覆盖共享约会簿中的记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34958080/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com