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
Bestanden worden op onze servers verwerkt en na 30 minuten verwijderd.
Teken dat kolommen scheidt in CSV- en tekstbestanden, zowel bij het lezen als bij het schrijven. Automatisch herkent het uit de invoer en schrijft komma's.
UTF-8 werkt voor alle talen. Kies UTF-8 met BOM als Excel op Windows onleesbare accenten of Aziatische tekens toont bij het openen van de CSV.
Invoer uit Excel, ODS en Numbers: converteer alleen het eerste blad of alle bladen (één CSV per blad in een ZIP, of één JSON-sleutel per blad).
Naam van het bladtabblad in de nieuwe spreadsheet, maximaal 31 tekens.
Array van objecten gebruikt kolomnamen als sleutels voor elke rij; array van arrays is compacter en bewaart de koptekst als eerste array.
Naam van het buitenste element dat alle rijen omvat; elke rij wordt een <row> daarbinnen.
Gebruikt in CREATE TABLE- en INSERT-instructies. Alleen letters, cijfers en underscores.
Aanhalingstekens en kolomtypen verschillen enigszins per database; kies de database waarin u gaat importeren.
Schrijf datumcellen in één notatie. ISO (2026-10-18) is het veiligst voor databases en code; behouden laat ze zoals ze in de bron staan.
Zo gebruikt u deze tool
- 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
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
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
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
Identifiers gebruiken standaard dubbele aanhalingstekens. Namen tussen aanhalingstekens behouden hun hoofdletters, dus "Email" en email zijn twee verschillende kolommen.
- Namen langer dan 63 bytes worden afgekapt
Opnieuw dubbele aanhalingstekens, met flexibele typering: een kolom die als INT is gedeclareerd accepteert nog steeds tekst, tenzij de tabel als STRICT is gedeclareerd, een optie die in SQLite 3.37.0 is toegevoegd.
- Werkt in de sqlite3-shell of DB Browser for SQLite
Identifiers staan tussen vierkante haken, zoals in [order date]. Tekstkolommen met niet-Latijnse tekens hebben NVARCHAR en N'…'-waarden nodig.
- Werkt in SSMS of Azure Data Studio
| Organisatie | Vereiste | Bron |
|---|---|---|
| MySQL 8.0 | max_allowed_packet staat standaard op 64 MB; een enkele instructie die groter is, wordt geweigerd | — |
| SQL Server | Eén INSERT … VALUES-lijst accepteert maximaal 1.000 rijwaarde-expressies | — |
| PostgreSQL | Identifiers langer dan 63 bytes worden stilzwijgend afgekapt | — |
| SQLite | Een 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
- –
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
- –
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.
- Excel naar SQL converterenZet een Excel-blad om in een SQL-script voor MySQL, PostgreSQL, SQLite of SQL Server. Kopteksten worden kolommen, rijen INSERT-statements.
- SQL naar CSV converterenZet de INSERT-statements uit een .sql-dump om in CSV-rijen voor Excel of Google Sheets. Voor dumps van MySQL, phpMyAdmin, SQLite en SQL Server.
- CSV naar XLSX converterenZet CSV om naar een Excel-werkmap (XLSX) met voorloopnullen, lange ID's en accenten intact. Komma, puntkomma en tab worden automatisch herkend.
- CSV naar XML converterenZet CSV-rijen om naar welgevormde XML met uw eigen root-tag. Speciale tekens geëscapet, scheidingsteken herkend, UTF-8. Tot 20 bestanden tegelijk.
- CSV naar Parquet converterenZet CSV om naar Apache Parquet met getypeerde kolommen en compressie, klaar voor pandas, DuckDB, Spark, BigQuery of Athena. Zonder Python of Spark.
- Parquet naar CSV converterenZet Apache Parquet online om naar CSV en open het in Excel, Google Sheets of elke importtool. Zonder Python, Spark of DuckDB. Tot 20 bestanden.