drop table-statements veroorzaken een impliciete commit, wat niet is toegestaan in een mysql-functie. drop tijdelijke tabel veroorzaakt echter niet de commit. als je je geen zorgen maakt over reguliere (niet-tijdelijke) tabellen met de naam months_between_dates of filter_months die bestaan, zou je moeten kunnen veranderen
DROP TABLE IF EXISTS months_between_dates;
DROP TABLE IF EXISTS filter_months;
naar
DROP TEMPORARY TABLE IF EXISTS months_between_dates;
DROP TEMPORARY TABLE IF EXISTS filter_months;