Drizzle to SQL DDL

Generador de Esquemas Drizzle ORM a SQL CREATE TABLE DDL

Convierta definiciones pgTable, mysqlTable y sqliteTable de Drizzle ORM en scripts de migración ejecutables SQL CREATE TABLE con total precisión.

Preajustes:
Dialecto Objetivo:
Entrada de Esquema Drizzle TypeScript.ts
-- ============================================================================
-- Drizzle ORM Schema Migration DDL Script
-- Target Dialect: POSTGRES
-- Generated via ToolsAA Drizzle-to-SQL Engine
-- Tables: 0 | Columns: 0 | Foreign Keys: 0 | Indexes: 0
-- ============================================================================

-- ----------------------------------------------------------------------------
-- Table Definitions
-- ----------------------------------------------------------------------------
0
Tablas Detectadas
0
Columnas Mapeadas
0
Índices y Unicidades

Privacidad 100% en el Navegador

Sin llamadas remotas ni almacenamiento externo. El análisis y la generación de DDL se ejecutan íntegramente en su navegador local.

Motor DDL Multi-Dialecto

Transforma definiciones pgTable, mysqlTable y sqliteTable en sentencias CREATE TABLE, ALTER TABLE y CREATE INDEX conformes al estándar.

Listo para Producción Drizzle Kit

Proporciona recetas listas para drizzle.config.ts, comandos de migración de CLI e inferencia automática de tipos de TypeScript.

Referencia técnica y guía de arquitectura

Guía del Desarrollador del Generador de DDL SQL CREATE TABLE desde Esquemas Drizzle ORM — Guía de referencia

Convierta definiciones pgTable, mysqlTable y sqliteTable de Drizzle ORM en scripts de migración ejecutables SQL CREATE TABLE con total precisión.

Parámetros clave y controles

Dialecto SQL y Controlador DestinoEnum (PostgreSQL / pgTable | MySQL / mysqlTable | SQLite / sqliteTable)

Selecciona el motor de base de datos de destino para aplicar la sintaxis DDL específica del dialecto, correspondencia de tipos de datos (como TIMESTAMP WITH TIME ZONE vs DATETIME, JSONB vs JSON), caracteres de escape y restricciones.

Por defecto: PostgreSQL / pgTable
Estrategia de Ubicación de RestriccionesEnum (Restricciones Nombradas a Nivel de Tabla | Restricciones en Línea de Columna)

Controla si las claves primarias, restricciones de unicidad y claves foráneas se generan en línea con la columna o como cláusulas CONSTRAINT explícitas al pie de la tabla.

Por defecto: Restricciones Nombradas a Nivel de Tabla
Estrategia de Emisión de Índices y EnumsEnum (Sentencias DDL Independientes | Cláusulas Integradas en Esquema)

Determina si los enums personalizados de PostgreSQL (pgEnum) y los índices de tabla se emiten como instrucciones CREATE TYPE y CREATE INDEX separadas o incrustadas en las declaraciones de tabla.

Por defecto: Sentencias DDL Independientes
Idempotencia y Cláusulas PreviasEnum (CREATE TABLE IF NOT EXISTS | CREATE TABLE Estricto | Incluir DROP TABLE IF EXISTS)

Añade comprobaciones seguras de existencia (IF NOT EXISTS) o antepone sentencias DROP TABLE IF EXISTS ... CASCADE; para permitir la repetición limpia de scripts de migración.

Por defecto: CREATE TABLE IF NOT EXISTS

Consejos profesionales y mejores prácticas

Al procesar esquemas con múltiples

Al procesar esquemas con múltiples tablas y relaciones de clave foránea, asegúrese de que las tablas principales precedan a las secundarias o configure la herramienta para emitir claves foráneas mediante instrucciones ALTER TABLE ... ADD CONSTRAINT posteriores.

Drizzle ORM migró la definición de

Drizzle ORM migró la definición de claves primarias compuestas e índices de objetos (table) => ({ pk: primaryKey(...) }) a arrays (table) => [primaryKey(...), index(...)]. Asegúrese de que su entrada soporte ambas estructuras sin problemas.

Al utilizar pgEnum en PostgreSQL

Al utilizar pgEnum en PostgreSQL, emita sentencias CREATE TYPE protegidas mediante bloques DO $$ BEGIN ... EXCEPTION WHEN duplicate_object THEN null; END $$; para asegurar migraciones idempotentes sin errores por tipos duplicados.

Errores comunes y solución de problemas

La creación de tablas falla con el error 'relation does not exist' al resolver claves foráneas

Las restricciones de clave foránea exigen que la tabla de destino y sus columnas clave existan previamente. Reordene las tablas en el esquema o separe las restricciones foráneas en sentencias ALTER TABLE posteriores a la creación.

Discrepancia de tipos de datos o modificadores no soportados al migrar entre motores SQL

Verifique que las columnas se adapten al dialecto elegido. Elementos propios de PostgreSQL como jsonb, columnas identity o funciones como gen_random_uuid() deben traducirse a tipos compatibles (por ejemplo JSON o CHAR(36)) al exportar a MySQL o SQLite.

Preguntas frecuentes (FAQ)

¿Cómo traduce el generador las referencias de clave foránea y las reglas en cascada de Drizzle ORM?▼

Al analizar .references(() => table.column, { onDelete: 'cascade', onUpdate: 'set null' }), el conversor genera cláusulas SQL estándar REFERENCES table(column) ON DELETE CASCADE ON UPDATE SET NULL garantizando total integridad referencial.

¿Se admiten claves primarias compuestas e índices multicolumna?▼

Sí. Las restricciones compuestas declaradas en callbacks de configuración de Drizzle, como primaryKey({ columns: [table.colA, table.colB] }) o index('idx_name').on(table.tenantId, table.email), se transforman con exactitud en cláusulas PRIMARY KEY e instrucciones CREATE INDEX.

¿Puedo convertir varias tablas y tipos enum de PostgreSQL desde un único archivo de esquema?▼

Sí. Puede pegar un archivo completo de TypeScript que contenga múltiples tablas pgTable, mysqlTable o sqliteTable junto con declaraciones pgEnum. La herramienta procesará cada entidad y generará un script de migración SQL ordenado.

¿Qué ventaja tiene esta herramienta web frente al comando oficial `drizzle-kit generate`?▼

A diferencia de `drizzle-kit generate`, que requiere Node.js, dependencias npm y un archivo drizzle.config.ts, esta herramienta web funciona al instante en su navegador sin instalaciones locales y con absoluta privacidad del lado del cliente.

Herramientas y utilidades relacionadas

Todas las herramientas →
Guía del generador de flujos de trabajo YAML para GitHub Actions CI/CDDesarrollo

Cree canalizaciones de flujos de trabajo YAML de GitHub Actions listas para producción para Node.js, Go, Python, compilaciones de Docker, pruebas y lanzamientos automatizados.

Abrir herramienta→
Generador de Configuraciones Linux Logrotate (Retención y Compresión)Desarrollo

Genere archivos de configuración para /etc/logrotate.d/ listos para producción con rotación diaria/semanal, compresión gzip, dateext, límites de tamaño y scripts postrotate.

Abrir herramienta→
Guía de Desarrollo del Generador de Configuración YAML de Ubuntu NetplanDesarrollo

Genere configuraciones netplan YAML para Ubuntu 20.04/22.04/24.04: IPs estáticas, DHCP, servidores DNS, rutas de puerta de enlace, bridges y bonds.

Abrir herramienta→
Guía de Desarrollo: Generador de Modelos Python SQLAlchemy 2.0 desde SQL DDLDesarrollo

Convierta sentencias SQL CREATE TABLE en modelos fuertemente tipados de Python SQLAlchemy 2.0 DeclarativeBase con anotaciones Mapped y mapped_column.

Abrir herramienta→
Guía para Desarrolladores: Generador de Modelos Struct GORM para Golang desde SQL DDLDesarrollo

Convierta esquemas SQL CREATE TABLE en definiciones de estructuras struct de Golang con etiquetas GORM, etiquetas JSON y tipos Go fuertemente tipados.

Abrir herramienta→
Guía de Desarrollo: Generador de Modelos Sequelize TypeScript desde SQL DDLDesarrollo

Referencia técnica para desarrolladores sobre la conversión de DDL SQL CREATE TABLE en modelos tipados Sequelize TypeScript, definiciones DataTypes, atributos CreationOptional y declaraciones Model.init.

Abrir herramienta→