Saltar al contenido

Convertidor de dialecto SQL

Reescribe SQL entre sintaxis de PostgreSQL, MySQL, SQLite y SQL Server.

Entrada
Salida

Convertidor de dialecto SQL

Pega una consulta escrita para una base de datos y obtenla reescrita para otra. El convertidor cubre sintaxis de límite de filas, funciones comunes de fecha y cadena, concatenación de cadenas, comillas de identificadores y tipos de columna entre PostgreSQL, MySQL, SQLite y SQL Server — útil al migrar un proyecto de MySQL a PostgreSQL, portar un script escrito para SQL Server a SQLite, o simplemente verificar cómo se vería una consulta en otro motor.

El dialecto de origen y el dialecto de destino eligen los dos extremos de la conversión. Las casillas de verificación a continuación activan y desactivan conversiones individuales: normalizar comillas de identificadores cambia comillas dobles, comillas invertidas y corchetes por el estilo propio del destino; convertir cláusula de límite de filas cambia entre LIMIT, TOP y OFFSET…FETCH FIRST sin perder nunca silenciosamente un offset; convertir funciones de fecha y cadena reescribe NOW()/GETDATE()/datetime('now'), LENGTH()/LEN(), SUBSTRING()/SUBSTR() y COALESCE()/IFNULL()/ISNULL(); convertir concatenación de cadenas cambia entre || y CONCAT()/+; convertir tipos de columna asigna SERIAL, AUTO_INCREMENT, IDENTITY(1,1), BOOLEAN, TEXT y declaraciones de tipo TIMESTAMP a su equivalente más cercano. Mantener comentarios controla si los comentarios -- y /* */ sobreviven a la reescritura.

Algunas construcciones genuinamente no tienen equivalente — RETURNING y ON CONFLICT de PostgreSQL, u ON DUPLICATE KEY UPDATE de MySQL — y en lugar de adivinar una reescritura, la herramienta las deja en su lugar y las enumera en un bloque de advertencias agregado a la salida. Reescribe texto de instrucción en lugar de analizar un plan de ejecución completo, así que revisa el resultado antes de ejecutarlo contra una base de datos real, especialmente para subconsultas anidadas o formato inusual. Los scripts de múltiples instrucciones también funcionan: cada instrucción separada por un punto y coma se convierte por su cuenta.

Todo funciona localmente en tu navegador: ninguna consulta, nombre de tabla, nombre de columna o cadena de conexión se envía a ningún lugar. Copia el resultado, descárgalo como archivo .txt, o envía la salida directamente de vuelta a la entrada para ejecutar otro paso.

Preguntas frecuentes

¿Realmente analiza el SQL, o simplemente hace reemplazo de texto?
Reescribe patrones conocidos — cláusulas de límite de filas, funciones comunes, concatenación, comillas de identificadores y tipos de columna — con sustituciones de texto dirigidas en lugar de un analizador SQL completo, así que siempre verifica el resultado antes de ejecutarlo contra una base de datos.
¿Qué sucede con construcciones que no existen en el dialecto de destino?
Se dejan en su lugar y se enumeran en un bloque de advertencias agregado a la salida, como ON CONFLICT de PostgreSQL al convertir a SQL Server.
¿Puedo convertir scripts de múltiples instrucciones?
Sí — cada instrucción, separada por puntos y coma, se maneja por su cuenta, así que un script con varios CREATE TABLE o SELECT se convierte en una sola pasada.
¿Se carga mi SQL en algún lugar?
No. La conversión se ejecuta completamente en tu navegador — tus consultas, esquema y datos nunca dejan tu dispositivo.