Това поведение може да бъде причинено от свойство на връзката
allowMultiQueries=true
. Предполагам, че това свойство ще накара MySQL да разбие заявките в ;
като разделител на заявки и след това ги изпълнявайте като отделни заявки, като по същество нарушавате кода ви за създаване на тригери.
Както казахте в - сега изтрит - отговорете, че добавянето на allowMultiQueries=true
всъщност реши проблема (противно на моите очаквания), проблемът може всъщност да е последният ;
във вашето запитване. Така че друго нещо, което трябва да проверите, е дали проблемът изчезва, като премахнете последния ;
(в END;
) във вашия скрипт (и без да използвате allowMultiQueries=true
). Някои бази данни не отчитат ;
да е валиден в края на изявление (тъй като всъщност е разделител за отделни оператори).
(този отговор се базира на моя коментар по-горе)