70 votes

Créer une table mysql directement à partir d'un fichier CSV à l'aide du moteur de stockage CSV ?

Je viens d'apprendre que MySQL dispose d'un moteur de stockage CSV natif qui stocke les données dans un fichier de valeurs séparées par des virgules par table.

Est-il possible de créer une table directement à partir d'un fichier CSV téléchargé, par exemple :

 CREATE TABLE USERS < PATH/USERS.CSV

users.csv est téléchargé par l'utilisateur ?

105voto

user645715 Points 1196

Je viens de découvrir csvkit , qui est un ensemble d'outils en ligne de commande Unix pour les fichiers CSV. Je l'ai installé sur mon Mac avec pip install csvkit . La commande était :

 csvsql --dialect mysql --snifflimit 100000 bigdatafile.csv > maketable.sql

Vous pouvez également fournir une chaîne de connexion à la base de données et charger directement la table.

12voto

pal4life Points 693

" Convertir CSV en SQL " m'a aidé. Ajoutez votre fichier CSV et vous êtes prêt à partir.

10voto

Bill Isaacs Points 113

Il existe un moyen plus simple si vous utilisez phpMyAdmin comme interface MySQL :

  1. Créez une base de données avec les paramètres par défaut.
  2. Sélectionnez la base de données.
  3. Cliquez sur "Importer" en haut de l'écran.
  4. Sélectionnez "CSV" sous "Format".
  5. Choisissez les options appropriées à votre fichier CSV, ouvrez le fichier CSV dans un éditeur de texte et référencez-le pour obtenir les options "appropriées".

Si vous rencontrez des problèmes, pas de problème, supprimez simplement la base de données et réessayez.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X