Como o MySQL não suporta
check
, você precisa de um gatilho para isso. Algo como este gatilho CREATE:delimiter $$
CREATE TRIGGER some_trigger_name
BEFORE INSERT ON SubjectEnrollment
FOR EACH ROW
BEGIN
IF (NEW.register > NEW.classSize OR NEW.register < 0)
SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'invalid data';
END IF;
END
$$
Você precisa definir o mesmo gatilho para
UPDATE
s.