Как создать утверждение в MySQL?

В таблице есть 4 поля: id, workday, dayoff, sumdays
Хочу добавить проверку что бы сумма workday + dayoff записываемая в sumdays была не более 365. Написал:
CREATE ASSERTION Limitdays CHECK (
    NOT EXISTS (
        SELECT `workday`, `dayoff`, `sumdays`
        FROM `worker`
        WHERE id=id
        AND `sumdays` < 367
    )
);

Ругается на ошибку
right syntax to use near 'ASSERTION Limitdays CHECK (
NOT EXISTS (
SELECT `workday`, `dayoff' at line 1
Нагуглить по утверждениям вообще почти ничего толкового не удалось. Есть межтабличные утверждения, но у меня всё внутри одной таблицы...
  • Вопрос задан
  • 256 просмотров
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
MySQL не поддерживает ASSERTION.
Используйте триггеры BEFORE INSERT и BEFORE UPDATE.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы