MySQL程序删除相关行

时间:2012-05-21 12:29:52

标签: mysql procedure delete-row

我有桌子:

id  parent  name

现在,父字段是另一行的id。 我不能像MySQL那样使用触发器:

  

无法在存储的函数/触发器中更新表'products_categories',因为它已被调用此存储函数/触发器的语句使用。

如何删除所有具有已删除ID的父类的行?

1 个答案:

答案 0 :(得分:0)

您可以递归调用该过程。该程序必须执行以下操作:

  • parent值读入变量
  • 删除记录(按id
  • 如果parent值不为NULL - 再次调用该过程并将parent值作为IN参数传递。

检查服务器变量 max_sp_recursion_depth - 存储过程可以自行调用的次数。