Wie überprüfe ich, ob eine MySQL-Abfrage gültig ist, ohne sie auszuführen?
Ich mache ein einfaches Tool, das eine Reihe von MySQL-Befehlen abruft und ausführt (auf mehreren DB-Servern nacheinander). Ich vertraue darauf, dass die Benutzer vernünftig sind, aber Fehler passieren und ich suche nach einer Möglichkeit, grundlegende Tippfehler zu vermeiden:
Gibt es eine Möglichkeit, MySQL-Abfragen zur Laufzeit (relativ einfach) zu validieren, um festzustellen, ob sie syntaktisch korrekt sind?
Ich suche nicht nach semantischer Korrektheit, z. Tabellennamen oder Join-Anwendbarkeit; so etwas wie eine Rechtschreibprüfung für SQL-Abfragen.
Mit anderen Worten
SELECT * FROM x;
ode
INSERT INTO x SET id=1,bar="foo";
würde als gültig markiert werden, wohingegen einer von diesen nicht:
SELECT FROM x;
SECLET * RFOM x;
ISNETR INTO x SET id=1;
HJBGYGCRYTCY;
ZumSELECT
s, ich könnte @ biegEXPLAIN
nach meinen Wünschen - runEXPLAIN SELECT (...)
und auf Fehler achten, aber gibt es eine Möglichkeit, auch nach anderen Befehlen zu suchen?