, . , 6:00 - 9:00, 5:00 - 10:00.
( )
CREATE TRIGGER DateRangeOverlapTrigger
ON TargetTable
FOR INSERT, UPDATE
AS
BEGIN
IF EXISTS
(SELECT t.UniqueId
FROM TargetTable t
JOIN inserted i ON i.starttime < t.endtime
AND i.endtime > t.starttime
AND i.UniqueId <> t.UniqueId)
BEGIN
RAISERROR ('Invalid due to time overlap', 16, 1)
IF (@@TRANCOUNT > 0)
ROLLBACK
END
END