你可以这样做:
alter table appointments
add constraint unique_dr_app_start unique (docID, AppStart);
例子:
insert into appointments (AppId, docID, AppStart)
values (1, 123, '2021-11-25 12:30:00'); -- OK
insert into appointments (AppId, docID, AppStart)
values (2, 123, '2021-11-25 10:30:00'); -- OK
insert into appointments (AppId, docID, AppStart)
values (3, 123, '2021-11-25 12:30:00'); -- error
密钥“unique_dr_app_start”的重复条目“123-2021-11-25 12:30:00”
编辑 -- 包括结束约会验证
您可以另外设置约束:
alter table appointments
add constraint unique_dr_app_end unique (docID, AppEnd);
您可以通过尝试看到它在工作中:
insert into appointments (AppId, docID, AppStart)
values (4, 123, '2021-11-25 10:30:00'); -- error
密钥“unique_dr_app_start”的重复条目“123-2021-11-25 10:30:00”