Как проверить, действителен ли запрос MySQL, не выполняя его?
Я делаю простой инструмент, который получит строку команд MySQL и запустит ее (на нескольких серверах БД последовательно). Я верю, что пользователи будут разумными, но ошибки случаются, и я ищу способ предотвратить основные опечатки:
Есть ли способ проверки во время выполнения (относительно простых) запросов MySQL на предмет их синтаксической правильности?
Я не ищу семантической корректности, например имена таблиц или возможность присоединения; просто что-то вроде проверки орфографии для запросов SQL.
Другими словами,
SELECT * FROM x;
или же
INSERT INTO x SET id=1,bar="foo";
будет помечен как действительный, тогда как любой из них не будет:
SELECT FROM x;
SECLET * RFOM x;
ISNETR INTO x SET id=1;
HJBGYGCRYTCY;
ЗаSELECT
с, я мог бы согнутьEXPLAIN
на мои нужды - бегиEXPLAIN SELECT (...)
и следите за ошибками, но есть ли способ проверить и другие команды?