У меня есть следующие 2 таблицы базы данных:
DEPT ( Dnumber , Dname, Основан, Mgr_ssn, Бюджет)
СОТРУДНИК ( Ssn , Ename, Bdate, Dno, Salary)
и я хочу создать триггер, чтобы ни в одном департаменте не было более 8 сотрудников.
вот что я написал до сих пор
DELIMITER //
CREATE TRIGGER ensure_dept_count_on_insert BEFORE insert on `EMPLOYEE`
FOR EACH ROW
BEGIN
DECLARE maxCount integer;
set maxCount = (select count(*) as c from Employee where Dno = new.Dno);
if maxCount = 9
then SIGNAL SQLSTATE '02000' SET MESSAGE_TEXT = 'Department cannot have more than 8 employees';
end if;
END //
DELIMITER ;
Проблема в том, что когда я вставляю в EMPLOYEE, это дает мне исключение Таблица НЕ найдена, а при отпускании триггера вставка завершается успешно.