我不明白为什么mysql(5.5)不想设置我的触发器。
CREATE TRIGGER trig_apres_delete_filecache AFTER DELETE ON oc_filecache FOR EACH ROW
BEGIN
Declare id_parent VARCHAR;
Select distinct(id) from oc_storages where numeric_id = OLD.parent into id_parent ;
INSERT INTO histo_filecache (action, date_action, path,who) VALUES ('delete', NOW (), OLD.path,id_parent);
END//
最佳答案
distinct
不是函数。尝试select distinct id ...
:
Select distinct id from oc_storages where numeric_id = OLD.parent into id_parent ;
您还必须确保上面的查询仅返回单个记录。没有任何错误消息,这是我目前在您的代码中唯一看到的内容。
更新
您还应该提供varchar变量的长度:
Declare id_parent VARCHAR(x);
但是我还要仔细检查数据类型,因为id通常是数字值。
关于mysql - 触发并选择问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43975171/