【发布时间】:2020-08-07 22:31:40
【问题描述】:
所以我正在做一个预订系统,我有下表用于预订。
CREATE TABLE reservations (
user_id INT REFERENCES users (id),
booth_number INT REFERENCES booths (booth_number),
starts DATE NOT NULL,
ends DATE NOT NULL,
PRIMARY KEY (user_id, booth_number)
);
我想知道是否可以在数据库级别设置一个约束,禁止在同一个展位上插入重叠预订?
例如
INSERT INTO reservations( user_id, booth_number, starts, ends)
VALUES
(1, 0, CURRENT_DATE, CURRENT_DATE + 7),
(2, 0, CURRENT_DATE + 4, CURRENT_DATE + 9),
【问题讨论】:
标签: sql postgresql date intervals