Formateador y validador SQL
Embellece o minifica SQL y revisa sus errores de sintaxis con la línea y la columna exactas, para 20 dialectos y todo en tu navegador.
Todo se ejecuta en tu navegador: tu SQL nunca se sube a ningún servidor.
Opciones
Suelta aquí un archivo .sql o .txt, pega el texto o carga un ejemplo. Pulsa Ctrl+Enter para ejecutar.
Revisión de sintaxis
«Válida» significa que la sintaxis es correcta para esta gramática. El revisor no conoce el esquema de tu base de datos, así que no puede saber si las tablas o columnas existen ni si la consulta se ejecutará. Es posible que rechace sintaxis propia de un dialecto o muy reciente aunque tu base de datos la acepte.
Formatea, minifica y revisa SQL en tu navegador
El SQL legible es más fácil de revisar, depurar y comparar. Esta herramienta reescribe una consulta con sangría, saltos de línea y uso de mayúsculas coherentes, y conoce las particularidades de unos veinte dialectos, entre ellos MySQL, PostgreSQL, SQL Server (T-SQL), SQLite, BigQuery, Snowflake, Redshift, Oracle PL/SQL, Hive, Spark, Trino y DB2. Elige el dialecto, dos o cuatro espacios o tabulaciones, si las palabras clave, los tipos de datos y los nombres de funciones van en mayúsculas, en minúsculas o tal como los escribiste, y pasa las comas al principio de cada línea si ese es el estilo de tu equipo.
La revisión de sintaxis es la otra mitad. Pega un script y cada sentencia se valida por separado, de modo que ves cuáles pasan y cuáles fallan. Un fallo muestra la línea y la columna, el token problemático, unas líneas de contexto y, cuando es posible, una pista, como una palabra clave mal escrita, una coma final de sobra o un paréntesis sin cerrar. La división del script tiene en cuenta cadenas, comentarios, acentos graves, corchetes y los cuerpos con dólares de PostgreSQL, así que un punto y coma dentro de un literal nunca parte una sentencia por la mitad.
Minificar hace lo contrario de formatear: comprime los espacios en blanco y, si quieres, elimina los comentarios, para dejar una consulta compacta en una sola línea que puedas usar en registros, archivos de configuración o dentro de código. Trabaja con tokens y no con expresiones regulares, por lo que el texto dentro de cadenas y nombres entrecomillados queda exactamente como lo escribiste.
Ten presentes los límites. Un resultado verde demuestra que la sintaxis encaja con la gramática elegida, no que tus tablas existan ni que la consulta sea rápida o correcta. Algunos dialectos, los bloques procedurales y las novedades más recientes solo se admiten en parte, y unos pocos dialectos no tienen revisor propio; en ese caso puedes elegir tú mismo la gramática más cercana. Todo ocurre en local, así que puedes pegar consultas de producción sin riesgo, y si el archivo es grande, solo se pausa la vista previa en vivo hasta que pulses un botón.
Preguntas frecuentes
¿«Válida» significa que mi consulta se ejecutará?
No. El revisor solo comprueba la sintaxis. No tiene acceso a tu base de datos, así que no sabe si una tabla o columna existe, si los tipos son compatibles o si tienes permisos. Además usa su propia gramática, por lo que una sintaxis muy reciente o propia de un fabricante puede rechazarse aunque tu base de datos la acepte. Un resultado verde significa «el SQL está bien formado» y uno rojo, «mira este punto».
¿Mi SQL se sube a algún sitio?
No. Formatear, minificar y revisar la sintaxis se hace en tu navegador, en un proceso en segundo plano. No se envía nada a ningún servidor. El borrador opcional y tus ajustes se guardan solo en el almacenamiento local de este navegador.
¿Por qué el formateador puede funcionar y el revisor dar un error?
Son dos herramientas distintas. El formateador solo necesita reconocer tokens y cláusulas, así que es tolerante. El revisor usa una gramática completa del dialecto elegido y es más estricto. Cuando no coinciden aparece un aviso: el resultado se muestra igualmente, pero conviene echar un vistazo a la línea señalada.
¿Minificar cambia lo que hace mi consulta?
Solo quita espacios en blanco y comentarios. Las cadenas, los identificadores entrecomillados, los bloques con dólares y las pistas del optimizador se copian carácter por carácter, y los tokens que estaban pegados siguen pegados. Por precaución, no minifiques scripts que dependan de los saltos de línea, como los bloques DELIMITER de MySQL.