EXPLICAR hace el truco si está ejecutando MySQL 5.6 o superior.
explain update whatever;
Si la consulta es correcta, muestra el plan de ejecución. De lo contrario, devuelve el error de sintaxis.
Si está ejecutando una versión menor de MySQL, veo algunas opciones:
- La opción recomendada :Tenga lista una base de datos de prueba que refleje su base de datos de producción al menos en estructura . Idealmente, llénelo con datos de prueba para verificar que la consulta no solo sea sintácticamente correcta; pero que funciona como se esperaba .
- Ejecute la consulta en el ámbito de una TRANSACCIÓN que se revierte inmediatamente.
- Ejecute una versión de la consulta ligeramente modificada para que coincida con SIN FILAS.
Por ejemplo:
update table set col1 = @val1 where col2 = @val2;
Se convierte en:
update table set col1 = @val1 where (col2 = @val2) and 1=0;
Entonces, si está ejecutando 5.6 o superior, EXPLAIN
el truco es genial. Si no, las opciones 2 y 3 de la lista también son buenos trucos. Pero, por lo general, deberías encontrarte con un desarrollo servidor con su en desarrollo consultas de todos modos.