I use recursion in the following stored procedure
CREATE PROCEDURE `SP_DeleteParentDirectory`(pParentID INT,pIsFolder INT,pReferenceID INT)
BEGIN
SET @IsFolder= NULL;
SET @ChildID= NULL;
SET @ReferenceID= NULL;
IF ( pIsFolder= 2) THEN
SELECT FileID INTO @ChildID FROM filesinfo WHERE ParentID= pParentID LIMIT 1;
WHILE (@ChildID IS NOT NULL) DO
SELECT @IsFolder := filesinfo.IsFolder, @ReferenceID :=filesinfo.ReferenceID FROM filesinfo WHERE filesinfo.FileID = @ChildID;
CALL SP_DeleteParentDirectory(@ChildID,@IsFolder,@ReferenceID);
SELECT filesinfo.FileID INTO @ChildID FROM filesinfo WHERE ParentID= pParentID LIMIT 1;
END While;
END IF;
CALL SP_DeleteFileInfo(pParentID,pReferenceID);
END;;
but when I try to execute it I face an error in recursion max limit, this is forcing me to add the following statement :
SET @@SESSION.max_sp_recursion_depth = 100;
can I solve the problem without add this statement