Comment faire pour Importer Plusieurs fichiers csv dans une Base de données MySQL
Est-il un moyen d'importer plusieurs fichiers csv en même temps dans une base de données MySQL? Une sorte de l'importation du lot?
Je suis sur Mac OSX de l'exécution d'un serveur MAMP.
J'ai 185 fichiers csv que j'ai besoin de l'importer dans une table MySQL. Je peux les importer individuellement à l'aide de phpMyAdmin de l'onglet importer, mais il peut prendre beaucoup de temps. Personne ne sait si il ya une meilleure façon?
OriginalL'auteur Laxmidi | 2011-12-16
Vous devez vous connecter pour publier un commentaire.
Utilisez un shell script comme ceci:
Aussi, vous êtes en invoquant mysql une fois pour chaque fichier, et c'est tout à fait inutiles).
Comment voulez-vous faire cela de façon récursive (avec des sous répertoires)
OriginalL'auteur nazar554
Il y a un petit script PHP pour vous:
Voir le Manuel MySQL pour LOAD DATA INFILE options qui correspondent à vos documents.
OriginalL'auteur konsolenfreddy
Vous pouvez utiliser un script shell pour exécuter une boucle sur les fichiers (celui-ci suppose qu'ils sont dans le répertoire courant):
Remplacer le shebang avec l'un de nazar554 du script (#!/usr/bin/env bash). Après cela, vous obtiendrez la même erreur de votre obtention de son (mysql: command not found) depuis que nous avons à la fois arrivé à vous donner la même réponse. Vous devez exécuter ce script sur la même machine où votre base de données est hébergée (ou utiliser l'option-h pour se connecter à distance), et il doit avoir la ligne de commande de mysql client est installé.
OriginalL'auteur Tom H
J'ai modifié Tom script pour résoudre les quelques problèmes rencontrés
load data local infile
au lieu deload data infile
: [chargement d'un fichier à l'échelon local au serveur mysql]--local-infile
de permis de données locales, le mode de charge sur le client.OriginalL'auteur Abhijeet Apsunde
Pour l'Utilisateur de windows d'utiliser ce lot
d
de lettre de lecteur,p
pour le cheminde fichier,
n
pour le nom de fichier,x
pour l'extension et f est variable fichierSuit:
- Mettre ce fichier de commandes dans le répertoire où tous les plusieurs fichiers csv existe pas et l'a nommé comme quelque chose.chauve-souris
- exécuter cmd.exe en tant qu'administrateur et l'appeler quelque chose.le fichier bat et profiter de l'importation...
OriginalL'auteur Wasim A.
@hlosukwakha vous souhaitez utiliser
mysqlimport
.cette recherche une table de même nom que le fichier.
utilisation
mysqlimport -help
pour trouver les paramètres corrects, mais ils sont fondamentalement identiques àmysql
OriginalL'auteur Oskar Must
En python, vous pouvez utiliser d6tstack qui rend cette simple
Il traite également de les données les modifications de schéma, crée la table et vous permet de prétraiter les données.
OriginalL'auteur citynorman