我有一个租用表如下表结构:如何防止SQL中的日期重叠?
hireId int primary key
carId int not null foreign key
onHireDate datetime not null
offHireDate datetime not null
我试图编程一个多用户系统,不允许汽车重叠onhire和停租期间。我需要能够以非连续顺序添加员工。还需要允许编辑雇员。
任何方式来约束表或使用触发器等,以防止重叠?我使用实体框架,所以我将要插入到表正常,然后如果失败抛出一些例外开捕等
我能想到的唯一面向数据库的解决方案是设置一个'INSTEAD OF'触发器,一个执行检查的过程。但我会避免它,并检查代码中的重叠! – vulkanino 2012-03-06 10:09:30
从实体框架的角度来看,我不认为我可以在代码中轻松检查。我可以检查一点,但有两个人同时添加/编辑事件的可能性 – GraemeMiller 2012-03-06 10:17:48
我认为实体框架将使数据访问更容易,而不是更难!毕竟这是一个简单的检查。并发性是一个问题,你可以通过锁定解决,如果架构允许你(网络/无状态?) – vulkanino 2012-03-06 10:27:00