У меня есть таблица, отдел, с несколькими битовыми полями для указания типов отделов
Один из них - Склад (при значении true укажите, что отдел является складом)
И у меня есть еще одна таблица, ManagersForWarehouses со следующей структурой:
ID autoinc
WarehouseID int (foreign key reference DepartmentID from departments)
ManagerID int (foreign key reference EmployeeID from employees)
StartDate
EndDate
Чтобы установить новый менеджер для хранилища, я вставляю в эту таблицу значение EndDate, равное NULL, и у меня есть триггер, который устанавливает EndDate для предыдущей записи для этого хранилища = StartDate для нового менеджера, поэтому для определенного хранилища на определенном складе появляется один менеджер. время.
Я хочу добавить два проверочных ограничения следующим образом, но не знаю, как это сделать
- не разрешать вставку в ManagersForWarehouses, если WarehouseID не помечен как склад
- Не разрешать снимать флажок Склад, если в ManagersForWarehouses есть записи
Спасибо