Что не так с этим утверждением? В сообщении говорится, что я получаю сообщение об ошибке «КОГДА» мне нужно проверить, чтобы убедиться, что проблема с внешним ключом отсутствует, и после этого мне нужно проверить, произошла ли ошибка внешнего ключа из-за ошибки при вводе данных в неправильную таблицу.
CREATE TRIGGER trigger3
BEFORE INSERT ON sightings
FOR EACH ROW
WHEN ((SELECT flowers.comname FROM flowers WHERE comname = NEW.name) IS NULL)
BEGIN
WHEN ((SELECT genus, species FROM flowers WHERE CONCAT(species,' ',genus) = NEW.name) IS NOT NULL)
THEN
INSERT INTO sightings VALUES (comname, NEW.person, NEW.location, NEW.sighted)
END IF;
END;
END;