I also tried to put the SELECT and the DELETE into a stored procedure and CALL it from the trigger but with the same result: Can't update table 'tbl' in stored function/trigger because it is already used by statement which invoked this stored function/trigger <-- this happens with ALL ...