Importer données .csv dans une BD MySQL
Résolu
Vince
-
Vince -
Vince -
Bonjour,
voila... tout est dans le titre ^^ j'ai un fichier .csv contenant plus de 5000 lignes avec pour séparateur un point-virgule et j'aimerai balancer toutes ces données dans une table de ma BD MySQL. Y a-t-il un moyen de le faire via le query browser ou l'administrator.... ou un quelconque autre moyen ????
Merci de votre aide
Vince
voila... tout est dans le titre ^^ j'ai un fichier .csv contenant plus de 5000 lignes avec pour séparateur un point-virgule et j'aimerai balancer toutes ces données dans une table de ma BD MySQL. Y a-t-il un moyen de le faire via le query browser ou l'administrator.... ou un quelconque autre moyen ????
Merci de votre aide
Vince
A voir également:
- Nombre de colonnes invalides dans les données csv à la ligne 1
- Partage de photos en ligne - Guide
- Aller à la ligne excel - Guide
- Comment faire deux colonnes indépendantes dans word - Guide
- Supprimer les données de navigation - Guide
- Classer par ordre alphabétique excel plusieurs colonnes - Guide
4 réponses
MySQL sait très bien gérer des fichiers CSV simples avec la clause LOAD DATA INFILE :
L'exemple ci-dessus présuppose que le fichier, nommé importfile.csv, se trouve sur le serveur de base de données, à la racine.
LOAD DATA LOCAL INFILE '/importfile.csv' INTO TABLE test_table FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' (field1, field2, field3);
L'exemple ci-dessus présuppose que le fichier, nommé importfile.csv, se trouve sur le serveur de base de données, à la racine.
Jean-François Pillou
Fondateur de CommentCaMarche.net
sinon tu l'importe dans une bdd access et tu le transfere on utilisant un logiciel dbconverter pour enregistrer la table dans ta bdd MySql
Je ne souhaite pas utiliser un solution PHP... merci pour ces deux solutions je les essayerais des mon retour chez moi ce soir
Si d'autre personnes ont d'autre astuce à proposer la discussion reste ouverte
Vince
Si d'autre personnes ont d'autre astuce à proposer la discussion reste ouverte
Vince
MySQL ne gère pas les fichiers csv. Il faut donc que tu utilises un script pour injecter tes données dans ta bdd. Il existe aussi certains outils (appelés ETL) qui permettent d'injecter différentes données dans une bdd.
Pour les outils, il y a 'Data Integration' de pentaho qui le fait très bien mais c'est assez lourd comme solution.
Au niveau des scripts, j'en ai fait un en php qui transforme les données d'un csv en xml et il est possible de le modifier pour en fairedes requêtes SQL donc si tu as un serveur apache et des connaissances php, je veux bien te le transmettre.
Pour les outils, il y a 'Data Integration' de pentaho qui le fait très bien mais c'est assez lourd comme solution.
Au niveau des scripts, j'en ai fait un en php qui transforme les données d'un csv en xml et il est possible de le modifier pour en fairedes requêtes SQL donc si tu as un serveur apache et des connaissances php, je veux bien te le transmettre.
Une longue galère qui se termine grace à ce code !!!
Vince