À propos de cet outil
CSV vers SQL est un générateur gratuit qui, directement dans votre navigateur, convertit un CSV collé en instructions SQL : un CREATE TABLE optionnel avec types de colonnes inférés, plus un INSERT échappé par ligne. Tout se passe sur votre appareil, vos données ne sont donc jamais téléversées.
L'outil inspecte chaque colonne et déduit s'il s'agit d'une valeur entière, décimale, de date ou de texte, puis fait correspondre celles-ci aux types et à la mise entre guillemets des identifiants adaptés au dialecte que vous choisissez — MySQL, PostgreSQL, SQLite ou SQL Server. Les valeurs de type chaîne sont échappées en toute sécurité, les cellules vides deviennent NULL et les cellules numériques restent sans guillemets.
Comme il s'exécute en local, c'est un moyen privé et compatible hors ligne de charger des données de tableur dans une base de données sans assistant d'importation, et vous pouvez copier le SQL ou le télécharger sous forme de fichier .sql.
Foire aux questions
Comment les types de colonnes sont-ils inférés ?
Une colonne est typée entier lorsque chaque valeur non vide est un nombre entier, décimal lorsque les valeurs sont numériques avec des fractions, date lorsqu'elles correspondent à YYYY-MM-DD (éventuellement avec une heure), et texte sinon. Les cellules vides sont émises en tant que NULL.
Qu'est-ce qui change d'un dialecte à l'autre ?
La mise entre guillemets des identifiants et les noms de types diffèrent : MySQL utilise des accents graves et INT/VARCHAR, PostgreSQL et SQLite utilisent des guillemets doubles (SQLite privilégie INTEGER/REAL/TEXT), et SQL Server utilise des crochets avec NVARCHAR. Les littéraux de chaîne sont entre guillemets simples avec les guillemets internes doublés dans tous les dialectes.
Quelles conventions CSV sont supposées ?
Les champs sont découpés selon le délimiteur que vous choisissez, les champs entre guillemets doubles (guillemets internes doublés) sont analysés de sorte que les délimiteurs intégrés sont préservés, et la première ligne sert de noms de colonnes lorsque la case d'en-tête est cochée (sinon, column1, column2 … sont utilisés).
Puis-je omettre le CREATE TABLE ?
Oui. Décochez l'option CREATE TABLE pour n'émettre que les instructions INSERT — pratique lorsque la table de destination existe déjà et qu'il vous suffit d'ajouter les lignes.
Plus d'outils