drop table-Anweisungen verursachen ein implizites Commit, was in einer mysql-Funktion nicht erlaubt ist. Drop Temporary Table führt jedoch nicht zum Commit. Wenn Sie sich keine Sorgen um reguläre (nicht temporäre) Tabellen namensmonths_between_dates oder filter_months machen, sollten Sie in der Lage sein,
zu ändernDROP TABLE IF EXISTS months_between_dates;
DROP TABLE IF EXISTS filter_months;
zu
DROP TEMPORARY TABLE IF EXISTS months_between_dates;
DROP TEMPORARY TABLE IF EXISTS filter_months;