Trochę tła dla osób zainteresowanych niektórymi tajemnymi zagadnieniami, z którymi miałem do czynienia w SQL Fiddle:
Wyłącz jawne zatwierdzenia w JDBC, wykryj je w SQL lub przełącz bazę danych w stan tylko do odczytu (dba.se)
Zasadniczo staram się, aby skrzypce zawsze pozostawały w stałym stanie, nawet gdy ludzie się nimi bawią. Jedną z rzeczy, o którą się martwiłem, są ludzie celowo mieszający się z bazami danych, łamiący je dla innych osób, które mogą z nimi pracować (stało się to wcześniej, ale nieczęsto na szczęście).
Znalazłem metody utrzymania porządku dla każdej platformy bazodanowej, ale co ciekawe, każda metoda jest zupełnie inna dla każdej platformy. Niestety, w przypadku MySQL musiałem uciec się do najgorszej opcji - zezwalania tylko na SELECTy po prawej stronie. Dzieje się tak, ponieważ istnieje zbyt wiele sposobów pisania zapytań, które zawierają niejawne zatwierdzenia, i nie znalazłem sposobu, aby zapobiec temu, aby nie wystąpiło to bez wyraźnej odmowy po stronie zapytania. Zdaję sobie sprawę, że to dość niefortunne, ale wydaje się, że jest to wymagane.
W każdym razie, ten konkretny błąd był wynikiem zmiany, którą ostatnio wprowadziłem w logice MySQL. Zostało to naprawione i teraz zgłasza oczekiwany komunikat o błędzie: