Om du vill radera alla poster i tabellen katalog så måst eman ta bort dem underifrån eftersom det är en forreign key constreint mellan parent_id och id i tabellen.
Jag slängde ihop en SP som fixar borttag av alla tuplerna på ett enkelt sätt:
Kod:
-- --------------------------------------------------------------------------------
-- Routine DDL
-- Note: comments before and after the routine body will not be stored by the server
-- --------------------------------------------------------------------------------
DELIMITER $$
CREATE DEFINER=`root`@`localhost` PROCEDURE `StoreStructure_Delete`()
BEGIN
DECLARE delete_id int;
DECLARE RowCount int;
select count(*) as c INTO RowCount from katalog;
WHILE RowCount > 0 DO
select ID INTO delete_id from katalog where id NOT in (select parent_id from katalog WHERE NOT PARENT_ID IS NULL) ORDER BY ID DESC LIMIT 0,1;
DELETE FROM katalog WHERE id = delete_id;
commit;
-- select count(*) as c INTO RowCount from katalog;
set RowCount = RowCount -1;
END WHILE;
END