Convertir JSON a SQL CREATE TABLE
Genera sentencias SQL CREATE TABLE desde JSON, en tu navegador.
Para qué sirve
JSON a esquema SQL sin escribir DDL
Compatible con los principales motores
Genera DDL compatible con PostgreSQL, MySQL, SQLite y SQL Server. Selecciona el dialecto antes de copiar.
100% privado
Tu JSON se procesa en el navegador. Tus estructuras de datos nunca se envían a servidores externos.
Tipos inferidos correctamente
VARCHAR, INTEGER, DECIMAL, BOOLEAN y TIMESTAMP inferidos según el valor real de cada campo JSON.
Instantáneo
Esquema SQL generado en milisegundos. Sin registro, sin esperas, sin instalaciones.
Cómo funciona
Tres pasos, sin complicaciones
Pega tu JSON
Pega un objeto o array JSON. El analizador infiere los tipos SQL más adecuados para cada campo.
Genera el DDL SQL
Se genera una sentencia CREATE TABLE con tipos de columna inferidos: VARCHAR, INTEGER, DECIMAL, BOOLEAN y TIMESTAMP.
Copia y ejecuta en tu base de datos
Copia el SQL generado y ejecútalo en PostgreSQL, MySQL, SQLite u otro motor compatible. Ajusta los tipos según necesites.
Preguntas frecuentes
¿Tienes dudas?
Los tipos se infieren según las reglas: strings se convierten a VARCHAR(255) por defecto; números enteros a INTEGER; números con decimales a DECIMAL(10,2); valores booleanos (true/false) a BOOLEAN; strings con formato de fecha ISO 8601 a TIMESTAMP; y null se trata como VARCHAR(255) nullable. Puedes ajustar las longitudes y tipos después de la generación.
Si el JSON contiene un campo llamado 'id' (o 'ID', 'Id'), se genera automáticamente como PRIMARY KEY con tipo SERIAL (auto-incremental) en PostgreSQL, o INTEGER AUTO_INCREMENT en MySQL. Si no hay campo id, se puede añadir una columna id como primera columna automáticamente.
El nombre de la tabla se infiere del contexto: si el JSON es un array llamado 'users', la tabla se llamará 'users'. Si es un objeto sin nombre de contexto, se usa 'records' como nombre predeterminado. Puedes cambiar el nombre de la tabla en el campo de nombre antes de generar.
Los objetos JSON anidados se omiten en la generación SQL, ya que no tienen representación directa en una tabla relacional plana. Solo se procesan los campos del primer nivel (campos planos). Para estructuras anidadas, necesitarías crear tablas relacionadas manualmente y definir claves foráneas.
El SQL generado sigue el estándar SQL-92 con pequeñas variaciones por dialecto. Para PostgreSQL se usa SERIAL para auto-incremento. Para MySQL se usa AUTO_INCREMENT. Para SQLite se usa INTEGER PRIMARY KEY AUTOINCREMENT. La herramienta te permite seleccionar el dialecto SQL de destino antes de generar.
Diseño de esquemas de base de datos, mapeo JSON-relacional y alternativas a ORM
El diseño de esquemas de base de datos es uno de los pasos más críticos en el desarrollo de aplicaciones. Cuando el contrato de datos ya está definido en JSON (por ejemplo, la respuesta de una API externa), convertir ese esquema JSON a una tabla SQL es una tarea mecánica pero tediosa. Inferir correctamente los tipos de columna, manejar valores nullable y generar la sintaxis DDL correcta para cada motor de base de datos consume tiempo de desarrollo valioso.
El mapeo entre el modelo de datos JSON y el modelo relacional es el fundamento de los ORMs (Object-Relational Mappers) como Hibernate (Java), Entity Framework (.NET), SQLAlchemy (Python) y Sequelize (Node.js). Sin embargo, para scripts de migración puntuales, análisis de datos ad-hoc o prototipado rápido, generar el DDL directamente desde el JSON es más rápido que configurar un ORM completo.
PostgreSQL y MySQL manejan datos JSON nativamente (tipos JSON y JSONB), pero para consultas eficientes con índices y joins, la estructura relacional tradicional sigue siendo superior. La conversión de JSON a SQL CREATE TABLE es frecuente en flujos de trabajo de ingesta de datos, pipelines ETL y cuando se importan datos de APIs externas a bases de datos internas. Convertir.ai genera este DDL directamente en el navegador sin enviar tus datos a ningún servidor.