JSON a SQL

Convierte un array JSON en un CREATE TABLE con tipos inferidos e INSERT por lotes, para PostgreSQL, MySQL, SQLite o SQL Server.

JSON a SQL funciona por completo en tu navegador. Tus datos se convierten en tu dispositivo y nunca se suben.

Creado y mantenido por Udit Agarwal

Abrir el conversor CSV a SQL

Acerca de JSON a SQL

JSON a SQL toma un array de objetos —una respuesta de API, una exportación, un fichero de pruebas— y produce las dos sentencias que lo meten en una base de datos: un CREATE TABLE cuyos tipos de columna se infieren de todos los valores de cada columna, e INSERT agrupados en listas VALUES multifil. La inferencia se hace bien: los enteros que superan 32 bits pasan a BIGINT, las cadenas con formato ISO a TIMESTAMP, las columnas mixtas degradan con seguridad a TEXT, y cada tipo canónico se escribe en la ortografía del dialecto: BOOLEAN llega como TINYINT(1) en MySQL y BIT en SQL Server. Los detalles que rompen los scripts manuales son justo el objetivo: identificadores entrecomillados por dialecto, comillas simples duplicadas para que O’Brien sobreviva, claves ausentes como NULL y objetos anidados serializados como texto JSON.

Características

  • CREATE TABLE con tipos inferidos de todas las filas
  • INSERT multifila con tamaño de lote configurable
  • Dialectos PostgreSQL, MySQL, SQLite y SQL Server
  • Identificadores entrecomillados: palabras reservadas seguras
  • Escapado de valores: comillas dobladas, NULL explícitos
  • Claves ausentes como NULL; anidados como texto JSON

Cómo usar JSON a SQL

  1. Pega un array JSON de objetos
  2. Nombra la tabla y elige el dialecto
  3. Ajusta las filas por INSERT si hace falta
  4. Copia el SQL: los tipos se listan antes para revisar

Ejemplo

Entrada

[{"id":1,"name":"O'Brien","active":true}]

Salida

CREATE TABLE "users" ("id" INTEGER, "name" TEXT, "active" BOOLEAN);
INSERT INTO "users" ("id", "name", "active") VALUES (1, 'O''Brien', TRUE);

La comilla doblada de O’’Brien es lo que mantiene el script válido.

Errores comunes y solución de problemas

  • Una columna numérica salió como TEXT. — Algún valor de esa columna es una cadena: "42" con comillas, una cadena vacía o un N/A. La inferencia examina todas las filas y degrada a TEXT ante cualquier discordancia.
  • El script falla en una columna llamada order o user. — No debería: los identificadores van entrecomillados por dialecto justo para esto. Si falla, verifica que el dialecto coincide con la base: acentos graves para MySQL, corchetes para SQL Server.
  • Las fechas se importaron como texto plano. — Solo las formas ISO 8601 (2024-01-15, con hora opcional) se infieren como TIMESTAMP. Formatos locales como 15/01/2024 son ambiguos y quedan TEXT a propósito.

Preguntas frecuentes

¿Cómo se infieren los tipos de columna desde JSON?
Cada valor de la columna vota: los enteros dan INTEGER (o BIGINT pasados 32 bits), cualquier decimal la vuelve DOUBLE PRECISION, true/false dan BOOLEAN, las cadenas con fecha ISO dan TIMESTAMP y cualquier conflicto acaba en TEXT. Se examinan todas las filas.
¿Qué cambia entre dialectos SQL?
El entrecomillado de identificadores (comillas dobles, acentos graves, corchetes), la ortografía de tipos (BOOLEAN frente a TINYINT(1) frente a BIT), los literales booleanos (TRUE frente a 1) y el prefijo N que SQL Server quiere en texto Unicode.
¿Qué pasa con objetos de claves distintas?
Las columnas son la unión de claves de todas las filas, en orden de aparición; las filas sin una clave insertan NULL ahí. Así es como los datos heterogéneos de API suelen necesitar aterrizar en una tabla.
¿El script generado está listo para producción?
Está listo para importar: entrecomillado seguro y tipos sensatos. Una tabla de producción merece además clave primaria, NOT NULL e índices, que ninguna inferencia puede adivinar de los datos.

Herramientas relacionadas

  • CSV a SQL — Genera sentencias INSERT y CREATE TABLE a partir de un CSV.
  • JSON a CSV — Convierte un arreglo de objetos JSON planos a CSV.
  • Formateador de JSON — Embellece, minimiza y valida JSON con la ubicación de los errores.
  • JSON a TypeScript — Genera interfaces de TypeScript a partir de una muestra JSON.
  • JSON Flatten / Unflatten — Aplana JSON anidado a claves con notación de puntos, o vuelve a anidarlo.
  • Ordenar claves JSON — Ordena recursivamente las claves de un objeto JSON de la A a la Z.

Más herramientas de JSON

  • Formateador de JSON — Embellece, minimiza y valida JSON con la ubicación de los errores.
  • Visor de árbol JSON — Explora JSON como un árbol plegable y tipado.
  • Visor de JSON — Visor de texto y árbol plegable con expandir/contraer y rutas de nodos.
  • JSON a TypeScript — Genera interfaces de TypeScript a partir de una muestra JSON.
  • JSON a CSV — Convierte un arreglo de objetos JSON planos a CSV.
  • Escapar / Desescapar JSON — Escapa texto a una cadena JSON o desescapa una cadena JSON a texto sin formato.
  • JSON a código — Genera tipos de Go, Rust, Python, Java, Kotlin, C# y TypeScript a partir de JSON.
  • JSON Diff — Compara dos documentos JSON con un diff estructural por rutas.
  • JSON Schema — Genera un JSON Schema desde una muestra o valida un documento JSON contra uno.
  • JSON Flatten / Unflatten — Aplana JSON anidado a claves con notación de puntos, o vuelve a anidarlo.
  • JSON a Zod — Genera un esquema de Zod a partir de una muestra JSON.
  • JSON a Pydantic — Genera clases de modelo Pydantic v2 a partir de una muestra JSON.

Ver todas las herramientas de JSON (29) · Todas las herramientas