Convertir un CSV en instructions SQL INSERT
Un CSV en entrée, un script .sql que n’importe quelle base exécute.
- PostgreSQL, MySQL, SQLite
- Types de colonnes détectés
- Guillemets correctement échappés
- Rien n’est envoyé
1.Ouvrez le fichier
CSV ou TSV. Glissez-le ici, ou choisissez un fichier.
Pourquoi ça existe
Les assistants d’import des bases de données sont pointilleux sur les CSV, et les chargeurs en ligne de commande demandent un accès aux fichiers que le serveur de base de données n’a souvent pas. Un simple script .sql marche partout où une requête marche. Mais l’écrire à la main, c’est là que les guillemets se trompent : une apostrophe dans un nom de famille casse tout le script, et une barre oblique inverse non échappée corrompt une ligne dans MySQL. Ici, le script est écrit avec l’échappement dont chaque base a réellement besoin.
Ce que ça fait
- Écrit une instruction CREATE TABLE avec un type pour chaque colonne, décidé d’après toutes ses valeurs.
- Écrit les lignes en instructions INSERT à plusieurs lignes, par lots de la taille de votre choix.
- Met les noms entre guillemets et échappe les valeurs pour la base choisie, y compris les barres obliques inverses de MySQL.
- Écrit les cellules vides en NULL et garde en texte les colonnes avec des zéros en tête ou de très longs nombres.
- Peut tout englober dans une transaction : un échec en cours de route laisse la base comme elle était.
Pourquoi des lots
Un INSERT par ligne est lent à exécuter, et un seul INSERT pour un million de lignes est trop gros pour la plupart des serveurs. Quelques centaines de lignes par instruction restent rapides et sous les limites habituelles de taille de paquet et d’instruction ; baissez ce nombre si votre serveur proteste.
Questions
- Quelles bases de données sont prises en charge ?
- PostgreSQL, MySQL et MariaDB, et SQLite. Les scripts sont du SQL standard : les autres bases qui suivent la norme, comme SQL Server pour les instructions INSERT, les acceptent en général avec de petites retouches du CREATE TABLE.
- Comment les types de colonnes sont-ils choisis ?
- D’après toutes les valeurs de la colonne. Une colonne d’entiers devient BIGINT, les décimaux un type à virgule flottante, vrai/faux BOOLEAN, les dates ISO DATE, et tout le reste, y compris les nombres avec zéros en tête, devient TEXT. Vous pouvez modifier le CREATE TABLE dans le script avant de l’exécuter.
- Est-ce sûr à exécuter sur une base de production ?
- Le script ne fait que créer une table et y insérer des lignes. Lisez-le d’abord, comme n’importe quel script : l’aperçu en montre le début, et le nom de la table est à vous.
La réponse détaillée
Cette page fait le travail. Le guide l’explique, y compris ce qu’un outil ne peut pas décider à votre place.
Exécuter des requêtes SQL sur un fichier CSV sans base de données (guide 2026)Inutile d'avoir Postgres pour un GROUP BY. Interrogez un CSV sur place avec DuckDB, SQLite, q ou votre téléphone, et voyez quel outil convient à quel cas.Les autres outils
- Ouvrir un fichier CSV en ligneDéposez un fichier. Il s’ouvre ici, et il reste ici.Ouvrez-le
- Exécuter du SQL sur un fichier CSVDu vrai SQL sur votre fichier, sans installer de base de données.Ouvrez-le
- Fusionner des fichiers CSV en un seulPlusieurs fichiers en entrée, un seul en sortie, colonnes rapprochées par nom.Ouvrez-le
- Supprimer les doublons d’un CSVDes doublons sur les colonnes que vous dites identifier une ligne.Ouvrez-le
- Comparer deux fichiers CSVAjouts, suppressions, modifications, rapprochés sur une clé et non ligne à ligne.Ouvrez-le
- Convertir un CSV en PDFUn CSV mis en page comme un tableau lisible, enregistré en PDF.Ouvrez-le
- Convertir un CSV en ExcelUn vrai .xlsx, sans que rien n’ait changé en route.Ouvrez-le
- Convertir un CSV en JSONChaque ligne un objet, chaque en-tête une clé.Ouvrez-le
- Convertir du JSON en CSVUn arbre aplati en tableau que l’on peut ouvrir partout.Ouvrez-le
- Convertir Excel en CSVToutes les feuilles d’un classeur, en CSV UTF-8 propre.Ouvrez-le
- Découper un fichier CSVUn fichier trop gros pour servir, en plusieurs qui le sont moins.Ouvrez-le
- Nettoyer un CSV en désordreAllemagne, allemagne et « Allemagne » redeviennent une seule valeur.Ouvrez-le