UltKit

CSV naar SQL converteren

Maak van een spreadsheetexport een script dat uw database kan uitvoeren. De kopregel bepaalt de kolomnamen, elke regel wordt een INSERT en de aanhalingstekens volgen het dialect dat u kiest.

Dataconverter

of sleep CSV, TSV, TXT …-bestanden hierheen ·

Max. 95 MB per bestand· Tot 20 bestanden· Verwijderd na 30 minuten

Uitvoer

Bestanden worden op onze servers verwerkt en na 30 minuten verwijderd.

Zo gebruikt u deze tool

  1. 1

    Upload de CSV

    Voeg één CSV-bestand toe of maximaal 20, elk tot 95 MB. Bestanden met puntkomma's of tabs worden automatisch herkend.

  2. 2

    Stel tabel en dialect in

    Typ onder Geavanceerde instellingen de SQL-tabelnaam en kies het SQL-dialect: MySQL, PostgreSQL, SQLite of SQL Server. Datums staat op ISO, zodat datumwaarden zonder gokwerk worden geladen.

  3. 3

    Converteer en voer uit

    Klik op Converteren naar SQL, lees de CREATE TABLE-regel en voer het script uit in uw databaseclient of importscherm.

CSV naar SQL maakt een CREATE TABLE-instructie van uw koprij en één INSERT per gegevensrij, correct opgemaakt voor MySQL, PostgreSQL, SQLite of SQL Server, zodat een spreadsheet met één script in een database wordt geladen.

Waarom een CSV omzetten naar SQL INSERT-statements

Elke database heeft een snelle CSV-lader en bij elk ervan zit een addertje. LOAD DATA LOCAL INFILE staat sinds MySQL 8.0 standaard uit op de server, COPY FROM een bestand vereist in PostgreSQL superuser-rechten of lidmaatschap van een speciale rol, en BULK INSERT van SQL Server leest paden op de servermachine, niet op uw laptop. Gehoste databases bieden vaak alleen een query-editor.

Een INSERT-script omzeilt dat allemaal. Het is tekst, dus u kunt het lezen, als seeddata in versiebeheer opnemen en in elke client uitvoeren. De keerzijde is snelheid: tienduizenden rijen laden prima, miljoenen horen in een native bulklader. Wie referentiegegevens in een werkmap bewaart, kan de CSV-stap overslaan met Excel naar SQL.

Voorbeeld CSV naar SQL voor MySQL

Script gegenereerd uit id,name,joined met twee rijen
CREATE TABLE `my_table` (
  `id` INT,
  `name` VARCHAR(255),
  `joined` DATE
);

INSERT INTO `my_table` (`id`, `name`, `joined`) VALUES
(1, 'Sanne de Vries', '2026-03-02'),
(2, 'Jan ''t Hart', '2026-04-15');

Hoe de vier SQL-dialecten verschillen in de uitvoer

Identifiers staan tussen backticks, zoals in order date, waardoor gereserveerde woorden zoals order ook als kolomnaam kunnen dienen.

  • Past ook bij MariaDB
  • Goede standaard voor imports in phpMyAdmin
Databaselimieten die een gegenereerd script beïnvloeden
OrganisatieVereisteBron
MySQL 8.0max_allowed_packet staat standaard op 64 MB; een enkele instructie die groter is, wordt geweigerd—
SQL ServerEén INSERT … VALUES-lijst accepteert maximaal 1.000 rijwaarde-expressies—
PostgreSQLIdentifiers langer dan 63 bytes worden stilzwijgend afgekapt—
SQLiteEen tabel heeft in een standaardbuild maximaal 2.000 kolommen—

Controleer dit voordat u het script uitvoert

Lees eerst de CREATE TABLE-regel. Kolomtypen worden uit de waarden afgeleid en een gok kan fout zijn: postcodes en telefoonnummers lijken numeriek maar moeten tekst blijven, anders verliest 02134 zijn voorloopnul. Pas het type in het script aan voordat u het uitvoert, of maak de tabel zelf aan en voer alleen het INSERT-deel uit.

Typ de echte naam in SQL-tabelnaam in plaats van my_table en voer het script waar uw client dat toestaat uit binnen een transactie, zodat één foute rij alles terugdraait. Andere doelformaten voor hetzelfde CSV-bestand vindt u op de pagina dataconverter.

CSV- en SQL-scriptformaten

CSV

Door komma's gescheiden waarden

CSV is een platte-tekstformaat voor tabellen waarin elke regel een rij is en komma's de kolommen scheiden. Het wordt sinds de begindagen van de computer gebruikt en is beschreven in RFC 4180, hoewel veel varianten puntkomma's of tabs en andere tekencoderingen gebruiken. Vrijwel elke spreadsheet-, database- en analysetool kan het importeren en exporteren, waardoor het de standaard is om data tussen systemen uit te wisselen. CSV bevat alleen waarden, zonder formules, opmaak, meerdere werkbladen of gegevenstypen.

Compressie
–
Transparantie
–
Animatie
–
Geïntroduceerd
–
CSV-converter

SQL

SQL-script

Een SQL-bestand is een script in platte tekst met Structured Query Language-opdrachten, zoals CREATE TABLE en INSERT, die een database op volgorde uitvoert. Het wordt vaak gebruikt voor databaseback-ups, migraties en het delen van voorbeeldgegevens. De taal zelf is een ISO-standaard, maar MySQL, PostgreSQL, SQLite en SQL Server hebben elk hun eigen dialect, dus scripts hebben tussen systemen vaak kleine aanpassingen nodig. Elke teksteditor kan een SQL-bestand openen; om het uit te voeren is een databaseclient nodig.

Compressie
–
Transparantie
–
Animatie
–
Geïntroduceerd
–
SQL-converter

CSV wordt SQL wanneer een bestand als tabel in een database moet belanden die u alleen via een queryvenster bereikt: een nieuwe app vullen, een referentielijst laden of een spreadsheet naar MySQL of PostgreSQL verplaatsen zonder servertoegang.

Vragen over CSV naar SQL converteren

Waarom een SQL-bestand in plaats van LOAD DATA of COPY?

Bulkladers zoals LOAD DATA INFILE van MySQL en COPY van PostgreSQL zijn sneller, maar vereisen toegang tot bestanden op de server of extra clientopties. Een gewoon script werkt overal waar u SQL kunt plakken: een cloud-databaseconsole, phpMyAdmin of een gecontroleerde migratie.

Hoe worden apostrofs in namen als O'Brien geschreven?

In een SQL-tekenreeks wordt een enkel aanhalingsteken geëscapet door het te verdubbelen, dus de waarde wordt geschreven als 'O''Brien'. Alle vier de dialecten accepteren die vorm, daarom breekt een naam met een apostrof de INSERT niet.

Wat worden mijn CSV-kopteksten in de tabel?

Kolomnamen, tussen aanhalingstekens zoals het gekozen dialect dat verwacht. Koppen zoals Unit Price werken, maar een naam met een spatie moet ook in elke latere query tussen aanhalingstekens staan. Hernoem zulke koppen dus liever vóór het converteren naar unit_price.

Kan ik het SQL-bestand via phpMyAdmin importeren?

Ja, op het tabblad Importeren. De limiet is daar upload_max_filesize van PHP, in een standaard php.ini 2 MB. Veel hosts verhogen dit en de pagina toont de huidige limiet. Splits een groot CSV-bestand in meerdere bestanden als het script groter is.

Kan ik een tabel ook weer naar CSV omzetten?

Exporteer de tabel als dump en converteer die met SQL naar CSV, of gebruik de eigen CSV-export van uw databaseclient. Beide leveren rijen op die een spreadsheet weer kan openen.