有思俱乐部学习园地

Mysql递归删除树目录的目录


递归删除树目录的目录是当你删除一个有孩子节点的目录时,你会把你孩子节点一起删除,如果孩子节点
还有孩子节点,则会找到孩子的孩子节点一起删除。

创建函数(有则跳过)

定义变量和参数

利用存储过程,将所有子节点存储到变量里

第一次,sTempChd被赋值,开始循环。

开始查找并拼接子节点并存储到变量里

CONCAT(sTemp,',',sTempChd)在这里的作用是拼接子节点,第一次为',str' 第二次是'str,str的子节点'以此类推 str是你传的参数

SELECT GROUP_CONCAT(id) INTO sTempChd FROM hyj WHERE FIND_IN_SET(pid,sTempChd)>0;

这一句的作用是搜索hyj表中所有pid=sTempChd的记录然后使用GROUP_CONCAT(id)拼接存入sTempChd中

当表中没有pid=sTempChd的时候,sTempChd返回一个null,然后结束循环

删除记录

从表中删除所有id有sTemp的值的记录

到此 Mysql递归删除就完成了

工作人员

 
                    
作者:15互联G5-2黄勇基
信息录入:15互联G5-2黄勇基
文案编辑:15互联G5-2黄勇基
图片编辑:15互联G5-2黄勇基