Я хочу создать триггер в Mysql.Перед вставкой и перед обновлением вставлять значения, только если идентификатор присутствует в другой таблице.
Вот мой триггер (до вставки), который не работает:
DELIMITER $$
CREATE TRIGGER
`before_insert_id`
BEFORE INSERT ON
`table2`
FOR EACH ROW
BEGIN
DECLARE msg VARCHAR(255);
IF NEW.id =
( SELECT id
FROM table2
WHERE NEW.id not in (select id from table1)
)
THEN
SET msg = 'id not in table1';
SIGNAL SQLSTATE '45002' SET message_text = msg ;
END IF ;
END ;
$$
DELIMITER ;
Также следуетмы вставляем значения в table2 внутрь после того, как оператор if проходит? или это только для проверки?