UltKit

Convertir CSV a SQL

Convierta la exportación de una hoja de cálculo en un script que su base de datos pueda ejecutar. La fila de encabezado da nombre a las columnas, cada línea se convierte en un INSERT y el entrecomillado sigue el dialecto que elija.

Convertidor de datos

o suelte aquí archivos CSV, TSV, TXT … ·

Máx. 95 MB por archivo· Hasta 20 archivos· Se borran a los 30 minutos

Salida

Los archivos se procesan en nuestros servidores y se borran a los 30 minutos.

Cómo usar esta herramienta

  1. 1

    Suba el CSV

    Agregue un CSV o hasta 20, de 95 MB cada uno. Los archivos separados por punto y coma o por tabulaciones se detectan automáticamente.

  2. 2

    Defina la tabla y el dialecto

    En Opciones avanzadas, escriba el Nombre de la tabla SQL y elija el Dialecto SQL: MySQL, PostgreSQL, SQLite o SQL Server. Fechas está en ISO para que los literales de fecha se carguen sin ambigüedades.

  3. 3

    Convierta y ejecute

    Pulse Convertir a SQL, lea la línea CREATE TABLE y luego ejecute el script en su cliente de base de datos o en la pantalla de importación.

Al convertir CSV a SQL se genera una sentencia CREATE TABLE a partir de la fila de encabezado y un INSERT por cada fila de datos, entrecomillados para MySQL, PostgreSQL, SQLite o SQL Server, de modo que una hoja de cálculo se carga en una base de datos ejecutando un solo script.

Por qué convertir un CSV en sentencias SQL INSERT

Toda base de datos tiene un cargador rápido de CSV, y todos tienen alguna pega. LOAD DATA LOCAL INFILE está desactivado por defecto en el servidor desde MySQL 8.0, COPY FROM desde un archivo exige permisos de superusuario o pertenecer a un rol especial en PostgreSQL, y BULK INSERT de SQL Server lee rutas en la máquina del servidor, no en su computadora portátil. Las bases de datos alojadas a menudo no ofrecen más que un editor de consultas.

Un script de INSERT evita todo eso. Es texto, así que se puede leer, guardar en el control de versiones como datos iniciales y ejecutar en cualquier cliente. La contrapartida es la velocidad: decenas de miles de filas se cargan sin problema, mientras que los millones corresponden a un cargador masivo nativo. Quien guarda datos de referencia en un libro de Excel puede saltarse el paso del CSV con Excel a SQL.

Ejemplo de CSV a SQL para MySQL

Script generado a partir de id,nombre,alta con dos filas
CREATE TABLE `my_table` (
  `id` INT,
  `nombre` VARCHAR(255),
  `alta` DATE
);

INSERT INTO `my_table` (`id`, `nombre`, `alta`) VALUES
(1, 'Ana Ruiz', '2026-03-02'),
(2, 'Lucía D''Angelo', '2026-04-15');

En qué se diferencian los cuatro dialectos SQL en la salida

Los identificadores van entre acentos graves, como en fecha pedido, lo que además permite usar palabras reservadas como order como nombres de columna.

  • También sirve para MariaDB
  • Buena opción predeterminada para importar con phpMyAdmin
Límites de las bases de datos que afectan a un script generado
OrganismoRequisitoFuente
MySQL 8.0max_allowed_packet es de 64 MB por defecto; se rechaza cualquier sentencia individual que lo supere—
SQL ServerUna lista INSERT … VALUES admite como máximo 1000 expresiones de valores de fila—
PostgreSQLLos identificadores de más de 63 bytes se truncan sin aviso—
SQLiteUna tabla tiene como máximo 2000 columnas en una compilación predeterminada—

Revise esto antes de ejecutar el script SQL

Lea primero la línea CREATE TABLE. Los tipos de columna se deducen de los valores, y la deducción puede fallar: los códigos postales y los números de teléfono parecen numéricos pero deben quedar como texto, o 01001 pierde su cero inicial. Cambie el tipo en el script antes de ejecutarlo, o cree la tabla usted mismo y ejecute solo la parte de INSERT.

Escriba el nombre real en Nombre de la tabla SQL en lugar de my_table y, si su cliente lo permite, ejecute el script dentro de una transacción, para que una sola fila errónea deshaga todo. Los demás destinos para el mismo CSV están en el hub del convertidor de datos.

Formatos CSV y script SQL

CSV

Valores separados por comas (CSV)

CSV es un formato de texto plano para tablas en el que cada línea es una fila y las comas separan las columnas. Se usa desde los primeros tiempos de la informática y se describe en el RFC 4180, aunque muchas variantes usan punto y coma o tabulaciones y distintas codificaciones de texto. Casi todas las hojas de cálculo, bases de datos y herramientas de análisis pueden importarlo y exportarlo, lo que lo convierte en el formato predeterminado para mover datos entre sistemas. CSV guarda solo valores, sin fórmulas, formato, varias hojas ni tipos de datos.

Compresión
–
Transparencia
–
Animación
–
Presentado en
–
Convertidor de CSV

SQL

Script SQL

Un archivo SQL es un script en texto plano con instrucciones de Structured Query Language, como CREATE TABLE e INSERT, que una base de datos ejecuta en orden. Se usa con frecuencia para copias de seguridad de bases de datos, migraciones y para compartir datos de ejemplo. El lenguaje en sí es un estándar ISO, pero MySQL, PostgreSQL, SQLite y SQL Server tienen cada uno su propio dialecto, por lo que los scripts suelen necesitar pequeños cambios entre sistemas. Cualquier editor de texto puede abrir un archivo SQL, y para ejecutarlo se necesita un cliente de base de datos.

Compresión
–
Transparencia
–
Animación
–
Presentado en
–
Convertidor de SQL

Un CSV se convierte en SQL cuando un archivo tiene que terminar como tabla en una base de datos a la que solo se llega por una ventana de consultas: cargar datos iniciales en una app nueva, cargar una lista de referencia o pasar una hoja de cálculo a MySQL o PostgreSQL sin acceso al servidor.

Preguntas sobre el convertidor de CSV a SQL

¿Por qué usar un archivo SQL generado desde CSV en lugar de LOAD DATA o COPY?

Los cargadores masivos como LOAD DATA INFILE de MySQL y COPY de PostgreSQL son más rápidos, pero necesitan acceso a archivos en el servidor u opciones adicionales en el cliente. Un script simple se ejecuta en cualquier lugar donde se pueda pegar SQL: la consola de una base de datos en la nube, phpMyAdmin o una migración revisada.

¿Cómo se escriben en el SQL los apóstrofos de apellidos como D'Angelo?

Dentro de una cadena SQL, la comilla simple se escapa duplicándola, así que el valor se escribe 'D''Angelo'. Los cuatro dialectos aceptan esa forma, y por eso un apellido con apóstrofo no rompe el INSERT.

¿En qué se convierten los encabezados de mi CSV dentro de la tabla SQL?

En nombres de columna, entrecomillados como espera el dialecto elegido. Encabezados como Precio Unitario funcionan, pero un nombre entrecomillado con un espacio tiene que entrecomillarse también en cada consulta posterior, así que, si puede, renómbrelo a precio_unitario antes de convertir.

¿Puedo importar el archivo SQL convertido desde CSV con phpMyAdmin?

Sí, en la pestaña Importar. El límite ahí es upload_max_filesize de PHP, que es de 2 MB en un php.ini estándar; muchos proveedores de hosting lo aumentan, y la página muestra el límite vigente. Si el script pesa más, divida el CSV grande en varios archivos.

¿Hay forma de volver de una tabla SQL a CSV?

Exporte la tabla como volcado y conviértala con SQL a CSV, o use la exportación a CSV de su propio cliente de base de datos. Ambas opciones le dan filas que una hoja de cálculo puede volver a abrir.