Я пытаюсь сделать триггер вставку в таблицу после обновления на checkedOutBy
в оснащать стол.MySQL триггер AFTER UPDATE IF ELSE вставки
Это дало мне Error 1064
в строках 7, 10 и других, поскольку я случайно изменил вещи, надеясь, что каким-то образом это может просто волшебным образом работать.
DELIMITER $$
CREATE TRIGGER moveToHistory AFTER UPDATE ON equip
FOR EACH ROW
BEGIN
IF NEW.checkedOutBy <> Old.checkedOutBy
BEGIN
IF OLD.checkedOutBy IS NOT NULL AND NEW.checkedOutBy IS NULL THEN
INSERT INTO equipmentHistory(assetId, operation, createdBy, creationDate)
VALUES(new.assetId, 'CheckIn', eid, Date(sysdate()))
NEW.status = 'CheckedIn';
ELSE IF OLD.checkedOutBy IS NULL AND NEW.checkedOutBy IS NOT NULL THEN
INSERT INTO equipmentHistory(assetId, operation, createdBy, creationDate)
VALUES(new.assetId, 'Checkout', eid, Date(sysdate()))
NEW.status = 'CheckedOut';
END IF
END
END$$
DELIMITER ;
Случайно меняя вещи и надеясь на магию, почти никогда не бывает хорошей идеей. Сказав это, помогите нам помочь вам - можете ли вы разместить DDL своего стола? – Mureinik