sql >> Databáze >  >> RDS >> Mysql

Výjimka syntaxe na spouštěči s více příkazy s MySQL a JDBC

Toto chování může být způsobeno vlastnost připojení allowMultiQueries=true . Můj odhad je, že tato vlastnost způsobí, že MySQL rozdělí dotazy na ; jako oddělovač dotazů a poté je spouštět jako samostatné dotazy, čímž v podstatě narušíte kód pro vytvoření spouštěče.

Jak jste řekli v – nyní odstraněno – odpovězte, že přidání allowMultiQueries=true ve skutečnosti problém vyřešil (na rozdíl od mého očekávání), problém může být ve skutečnosti poslední ; ve vašem dotazu. Další věcí, kterou je třeba zkontrolovat, je, zda problém zmizel odstraněním posledního ; (v END; ) ve vašem skriptu (a bez použití allowMultiQueries=true ). Některé databáze neberou v úvahu ; být platný na konci příkazu (jelikož je to ve skutečnosti oddělovač samostatných příkazů).

(tato odpověď je založena na mém komentáři výše)



  1. ERROR 1366 (HY000):Nesprávná hodnota řetězce:'\xF0\x9F\x98\x9C' pro sloupec 'komentář' na řádku 1

  2. Funkce 'Upravit' pro příspěvky na fóru a podobně

  3. Vytvoření tabulky mysql s proměnnou PHP

  4. Poslední aktivity uživatele - PHP MySQL