Générateur Excel vers SQL Insert

Convertissez des lignes Excel ou CSV en instructions SQL INSERT prêtes à l'emploi, gratuitement.

Cet outil fonctionne entièrement dans votre navigateur. Vos fichiers ne sont jamais envoyés à un serveur.

Drop an Excel or CSV file here or click to upload

Ce que fait cet outil

Il lit la première feuille d'un tableur importé et transforme chaque ligne en une instruction SQL `INSERT`, en utilisant vos en-têtes de colonne comme noms de colonne.

Comment l'utiliser

Déposez ou sélectionnez un fichier .xlsx, .xls ou .csv. Une fois analysé, modifiez le nom de table suggéré si besoin — les instructions générées apparaissent immédiatement en dessous, prêtes à copier.

Exemple résolu

Deux lignes avec les colonnes `name`, `quantity`, `in_stock` — ("O'Brien Supplies", 12, true) et ("Acme Co", 5, false) — deviennent : `INSERT INTO \`inventory\` (\`name\`, \`quantity\`, \`in_stock\`) VALUES ('O''Brien Supplies', 12, 1);` et une seconde ligne pour Acme Co avec `0` pour false — remarquez que l'apostrophe dans « O'Brien » est échappée en la doublant.

Comment les valeurs sont typées et échappées

Les valeurs texte sont entourées de guillemets simples, toute apostrophe interne étant doublée ; les nombres sont écrits sans guillemets ; les booléens deviennent les entiers `1` ou `0` ; et les cellules vides, nulles ou non définies deviennent le mot-clé SQL `NULL`. Les noms de colonnes sont entourés de backticks, à la manière de MySQL/MariaDB.

Comment le nom de la table est choisi

Le nom de la table reprend par défaut celui du fichier importé, sans son extension et avec tout caractère qui n'est ni une lettre, ni un chiffre, ni un tiret bas remplacé — vous pouvez le modifier avant de copier les instructions.

Limitations

Seule la première feuille du fichier est lue ; les autres feuilles d'un classeur à plusieurs feuilles sont ignorées. Une limite de 5 000 lignes par import s'applique, et les identifiants entre backticks relèvent de la syntaxe MySQL/MariaDB — Postgres et les autres bases attendant des identifiants entre guillemets doubles nécessiteront de remplacer les backticks avant d'exécuter les instructions. Aucun type de colonne, contrainte ou clé étrangère n'est déduit — cela ne génère que des INSERT, pas de DDL de création de table.

Confidentialité

Le tableur est entièrement analysé dans votre navigateur — le fichier et le SQL généré ne quittent jamais votre appareil.

Questions Fréquentes

Ma feuille de calcul est-elle envoyée à un serveur ?
Non, le fichier est traité entièrement dans votre navigateur via la bibliothèque xlsx, et ni le fichier ni le SQL généré ne quittent jamais votre appareil.
Quels formats de fichier sont pris en charge ?
.xlsx, .xls et .csv sont pris en charge, et seules les données de la première feuille sont lues — les autres feuilles du même classeur sont ignorées.
Comment les valeurs texte contenant une apostrophe sont-elles gérées ?
Toute apostrophe à l'intérieur d'une valeur texte est doublée (transformée en '') afin que l'instruction INSERT générée reste du SQL valide, conformément à l'échappement standard des chaînes SQL.
Y a-t-il une limite de lignes ?
Oui, les fichiers de plus de 5 000 lignes sur la première feuille sont rejetés avec un message vous demandant de diviser le fichier en fichiers plus petits.