Convertidor de CSV y Excel a SQL

Pega celdas de CSV o Excel, o abre un archivo .xlsx, y obtén sentencias CREATE TABLE e INSERT listas para ejecutar, con los valores escapados correctamente para tu base de datos.

Actualizado el
Abrir archivo (.xlsx, .csv, .json)
Entrada
Dialecto
Sentencias

Vista previa de la entrada

Tus datos nunca salen de tu ordenador. Todo se procesa localmente en tu navegador.

Cómo usar: CSV y Excel a SQL

  1. Pega el CSV o las celdas copiadas de Excel, abre un archivo .csv / .xlsx o haz clic en Cargar ejemplo.
  2. Elige el dialecto de tu base de datos e introduce el nombre de la tabla.
  3. Selecciona las sentencias que necesitas: CREATE TABLE con los tipos detectados, DROP TABLE, una transacción y cuántas filas van en cada INSERT.
  4. Revisa los tipos de columna detectados en la vista previa y luego pulsa Copiar o Descargar .sql y ejecútalo en tu cliente de base de datos.

¿Qué es un convertidor de CSV a SQL?

Un convertidor de CSV a SQL transforma las filas de una hoja de cálculo en sentencias SQL que una base de datos puede ejecutar: una sentencia CREATE TABLE que define las columnas y sentencias INSERT INTO … VALUES que añaden los datos. Es la forma más rápida de cargar una exportación puntual, rellenar una base de datos de desarrollo o pasar datos de Excel a MySQL o PostgreSQL sin usar un asistente de importación.

CREATE TABLE `customers` (
  `id` INT NOT NULL,
  `name` VARCHAR(16),
  `signup_date` DATE,
  `monthly_spend` DECIMAL(10,2),
  PRIMARY KEY (`id`)
);
INSERT INTO `customers` (`id`, `name`, `signup_date`, `monthly_spend`) VALUES
  (1, 'Ada Lovelace', '2024-01-15', 49),
  (4, 'O''Brien, Pat', '2024-04-09', 49);

Cómo se detectan los tipos de columna

Se revisa cada valor de una columna y se elige el tipo más estrecho que encaja con todos ellos. La vista previa muestra el resultado como una etiqueta encima de cada columna.

Valores de la columnaMySQLPostgreSQLSQL Server
Números enterosINT / BIGINTINTEGER / BIGINTINT / BIGINT
DecimalesDECIMAL(p,s)NUMERIC(p,s)DECIMAL(p,s)
true / falseTINYINT(1)BOOLEANBIT
2024-01-15DATEDATEDATE
2024-01-15 14:30:00DATETIMETIMESTAMPDATETIME2
TextoVARCHAR(n) / TEXTVARCHAR(n) / TEXTNVARCHAR(n) / NVARCHAR(MAX)

Las columnas de texto reciben una longitud de VARCHAR redondeada al alza a partir del valor más largo (16, 32, 50, 100, 255…). Revisa las longitudes antes de cargar datos de producción, ya que una columna que parece corta en tu muestra puede contener valores más largos más adelante.

Escapado y diferencias entre dialectos

  • Las comillas dentro del texto se duplican (O'Brien → 'O''Brien'); la salida de MySQL también escapa las barras invertidas.
  • Los identificadores se entrecomillan con acentos graves (MySQL), comillas dobles (PostgreSQL, SQLite, Oracle) o corchetes (SQL Server), así que palabras reservadas como order o group funcionan como nombres de columna.
  • Los inserts de varias filas son mucho más rápidos que una sentencia por fila. SQL Server permite como máximo 1000 filas por lista VALUES, y Oracle usa INSERT ALL … SELECT 1 FROM DUAL.
  • Las celdas vacías se convierten en NULL por defecto; desmarca la opción si quieres insertar cadenas vacías.

Consejos para importaciones grandes

Envuelve los inserts en una transacción para que una fila fallida no deje la mitad de los datos cargada, y usa lotes de entre 500 y 1000 filas. Para millones de filas, los cargadores masivos nativos como LOAD DATA INFILE de MySQL o COPY de PostgreSQL son todavía más rápidos. ¿Tienes JSON en lugar de CSV? Usa JSON a SQL y diseña una tabla a mano con el generador de CREATE TABLE. Ordena el resultado con el formateador de SQL.

También se busca como: csv a sql, excel a sql, convertir csv a sql insert, csv a mysql, excel a mysql, csv a postgresql, xlsx a sql, generador de insert sql.

Herramientas que combinan con: CSV y Excel a SQL

  • SQL a JSON, CSV y Excel — Pega un volcado SQL o unas cuantas sentencias INSERT y obtén las filas en JSON, CSV o en un libro de Excel con una hoja por tabla.
  • Excel a JSON — Abre un libro .xlsx o pega celdas directamente desde Excel o Google Sheets y obtén JSON limpio.
  • CSV a JSON — Pega CSV o TSV y obtén un array JSON de objetos.
  • JSON a Excel — Convierte un array JSON en un libro de Excel real.

Preguntas frecuentes

¿Cómo convierto una hoja de Excel en sentencias SQL INSERT?
Abre el archivo .xlsx con Abrir archivo (o copia las celdas y pégalas), elige tu dialecto de base de datos y el nombre de la tabla, y copia el SQL generado. La primera fila se usa como nombres de columna.
¿Qué bases de datos son compatibles?
MySQL y MariaDB, PostgreSQL, SQLite, Microsoft SQL Server y Oracle. Cada dialecto tiene su propio entrecomillado de identificadores, escapado de cadenas, valores booleanos y tipos de columna.
¿Puedo obtener una sentencia INSERT por fila?
Sí, configura Filas por INSERT en 1. Los lotes más grandes (de 100 a 1000 filas por sentencia) se importan mucho más rápido.
¿Por qué cambian los nombres de mis columnas?
La opción Nombres de columna en snake_case convierte encabezados como “Signup Date” en signup_date, lo que evita problemas con las comillas. Desmárcala si quieres conservar el texto original del encabezado.
¿Se suben mis datos a algún servidor?
No. El análisis y la generación de SQL se ejecutan íntegramente en tu navegador.
¿Puedo instalar CSV y Excel a SQL como aplicación web y utilizarla sin conexión?
Sí. CSV y Excel a SQL es una aplicación web instalable (PWA): se instala desde el navegador, no se descarga desde una tienda de aplicaciones. Haz clic en «Instalar aplicación» en la parte superior de esta página en Chrome o Edge (Windows, macOS, Linux, ChromeOS) o, en Android, utiliza «Compartir» → «Añadir a la pantalla de inicio» en iPhone y iPad, o «Archivo» → «Añadir al Dock» en Safari 17+ en un Mac. A continuación, se abrirá en su propia ventana con su propio icono y, como se ejecuta íntegramente en tu navegador, seguirá funcionando sin conexión. Firefox en el ordenador de sobremesa no permite instalar aplicaciones web. Cómo funciona la instalación.

Herramientas relacionadas