Это первый раз, когда мне нужно создать триггер в MySQL. Я пытаюсь обновить небольшую таблицу журнала (4 столбца), одним из которых является URL. У меня это работает, но я не могу понять, как предотвратить вставку 2 строк при срабатывании триггера. Я не могу создать уникальный индекс в строке URL-адреса из-за максимальной длины ключа. Есть предложения по другим средствам? Я попытался вставить с помощью операторов выбора и с помощью ON DUPLICATE KEY безуспешно.
CREATE DEFINER=`dbuser`@`%` TRIGGER `upd_url_prod` AFTER UPDATE ON `products`
FOR EACH ROW BEGIN
INSERT INTO my_changes (ext_id,url,changetime)
VALUES (NEW.external_id,NEW.detail_url,NOW());
END