Создать триггер, который проверяет даты [проблема] - PullRequest
0 голосов
/ 07 мая 2020

У меня проблема .. Требуется создание триггера, чтобы проверить, меньше ли дата уничтожения (dateEmpr), чем дата возврата (dateRetEff), она увеличивается на 10 дней до даты return

структура таблицы

CREATE TABLE emprunter(
    numLivre VARCHAR(5),
    dateEmpr DATE,
    numInsc VARCHAR(5),
    dateRetEff DATE
);

Это мой код ... и он говорит мне, что он неправильный

CREATE TRIGGER verifier_date 
BEFORE INSERT ON emprunter
FOR EACH ROW 
BEGIN
    if((SELECT DATEDIFF(NEW.dateRetEff, NEW.dateEmpr) from emprunter ) <0) then
        dateEmpr =  DATE_ADD(OLD.dateEmpr, INTERVAL 10 DAY);
    end if;
END;

1064 - У вас есть ошибка в SQL синтаксис; проверьте руководство, соответствующее вашей версии сервера MariaDB, чтобы найти правильный синтаксис для использования рядом с '= DATE_ADD (OLD.dateEmpr, INTERVAL 10 DAY)' в строке 6

1 Ответ

0 голосов
/ 07 мая 2020
CREATE TRIGGER verifier_date 
    BEFORE INSERT ON emprunter
    FOR EACH ROW 
    BEGIN
        if NEW.dateRetEff < NEW.dateEmpr then
            SET NEW.dateEmpr =  NEW.dateEmpr + INTERVAL 10 DAY;
        end if;
    END;

скрипка

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...