我想为每个插入的类别生成嵌套类别路径。
类别结构:
id
parent_id
name
我的触发器 - BEFORE -> INSERT
SET NEW.path = CONCAT(IFNULL((select path from categories where id = NEW.parent_id), '0'), '.', New.id)
NEW.id返回0?
我不知道我做错了什么。
最佳答案
在 BEFORE 触发器中,NEW.id
尚未设置(假设它是自动增量)。
在 AFTER 触发器中,更改 NEW.path
为时已晚。
您不能为此使用触发器。您必须让 INSERT 完成,然后执行 UPDATE 来更改路径。
关于mysql - 使用 SQL 触发器设置类别嵌套路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58269938/