Import d'un fichier CSV en SQL

Fermé
lionel-DIL Messages postés 1222 Date d'inscription lundi 25 juin 2012 Statut Membre Dernière intervention 7 août 2014 - 4 juil. 2012 à 16:29
 Glotch - 18 mai 2015 à 17:59
Bonjour,

Je dois réaliser un import d'un fichier CSV afin de la placer (après traitement) en SQL.
Jusque là, l'envoi du fichier au serveur est correct et fonctionne.
Maintenant, ce que j'aimerais faire, c'est ouvrir le fichier, placer chaque case (séparée par une virgule)dans un grand tableau pour pouvoir par la suite le traiter et l'envoyer en base.

À votre avis, est-ce plus rapide (pas à coder mais à s'exécuter) d'extraire, faire des traitement (remplacer des éléments, des mots par des chiffres), mettre ensuite dans un tableau, et ensuite envoyer en base, ou bien autrement ?
une autre variante:
- extraire, placer en tableau, traiter ce tableau, envoyer en base.

Le tableau est-il utile aussi ?

Merci.
A voir également:

3 réponses

Suggestion :
Importer le fichier CSV dans une table temporaire, y faire les traitements, et envoyer dans la table de destination, et vider la table temporaire.
2
lionel-DIL Messages postés 1222 Date d'inscription lundi 25 juin 2012 Statut Membre Dernière intervention 7 août 2014 1 767
15 juil. 2012 à 19:12
C'est extrêmement lourd comme processus.
2 appels base alors qu'il n'y en n'a qu'un seul nécessaire.
Ce n'est pas du tout la meilleure solution.
0
Si tu connais de meilleures solutions, utilises-les, testes-les et compares-les.
0
lionel-DIL Messages postés 1222 Date d'inscription lundi 25 juin 2012 Statut Membre Dernière intervention 7 août 2014 1 767
13 juil. 2012 à 14:39
petit up.
0
lionel-DIL Messages postés 1222 Date d'inscription lundi 25 juin 2012 Statut Membre Dernière intervention 7 août 2014 1 767
15 juil. 2012 à 17:46
up
0
lionel-DIL Messages postés 1222 Date d'inscription lundi 25 juin 2012 Statut Membre Dernière intervention 7 août 2014 1 767
17 juil. 2012 à 14:59
up
0
Pas la peine de faire autant de "up" ...
La solution que je t'ai proposée n'est pas si lourde que ça et est clairement pertinente quand il s'agit de gros volumes de données (va-t-en charger des Go de données en RAM quand le système ne peut pas ou te limite).
Sinon, entre tes 2 variantes, tu en as 2, compares et tu verras.
0
lionel-DIL Messages postés 1222 Date d'inscription lundi 25 juin 2012 Statut Membre Dernière intervention 7 août 2014 1 767
18 juil. 2012 à 09:23
Sauf que je ne "charge pas des Go en RAM", mais de petits fichiers d'une dizaine de lignes au maximum.
Je ne veux pas de cette "solution", c'est clair ?
Tout peut être fait en PHP, pourquoi télécharger un logiciel qui au final ne me servira à rien au vue de la construction de mes tables.
0
Je n'ai pas proposé de télécharger de logiciel supplémentaire, tu confonds.
S'il s'agit de très faibles volumes, qu'importe la méthode choisir, ça ne changera pas grand chose, seule l'implémentation effectuée par le développeur pourrait gravement nuire aux performances.
0
vordano Messages postés 1682 Date d'inscription mardi 12 juillet 2011 Statut Membre Dernière intervention 20 juillet 2012 316
17 juil. 2012 à 15:02
tu peux utiliser un logiciel comme par exemple kettle pour modifier tes données et les injecter dans une base de donnée
0
lionel-DIL Messages postés 1222 Date d'inscription lundi 25 juin 2012 Statut Membre Dernière intervention 7 août 2014 1 767
17 juil. 2012 à 15:05
Cette réponse est on ne peut plus hors-sujet !
Je ne demande pas de logiciel pour modifier des données, je demande quelle est la méthode la plus rapide lorsque mon code s'exécute.
0
vordano Messages postés 1682 Date d'inscription mardi 12 juillet 2011 Statut Membre Dernière intervention 20 juillet 2012 316
17 juil. 2012 à 15:19
...
tu sais, si tu veux tant savoir, autant comparer par toi même. ça nous éviteras de nous prendre des -1 pour des prunes...
0
lionel-DIL Messages postés 1222 Date d'inscription lundi 25 juin 2012 Statut Membre Dernière intervention 7 août 2014 1 767
17 juil. 2012 à 15:30
-1 uniquement parce que je demande quelle est la méthode la moins gourmande et que tu me proposes un logiciel qui n'a rien à voir avec ma demande.
Kettle peut-il être installé sur un serveur et être utilisé sur une plateforme Web ? Je ne pense pas. Et même si c'est possible, je ne travaille pas avec Access etc.

-1 parce que la réponse est carrément hors-sujet, ce n'est pas en mal voyons ...
0
vordano Messages postés 1682 Date d'inscription mardi 12 juillet 2011 Statut Membre Dernière intervention 20 juillet 2012 316
17 juil. 2012 à 15:34
moi je te propose un moyen pour traiter facilement ton fichier et y faire toutes les modifications que tu veux pour ensuite mettre ces données en base.
c'est bien le but non ? avoir un moyen rapide de faire tes traitements

et je n'ai pas parlé d'access
0
lionel-DIL Messages postés 1222 Date d'inscription lundi 25 juin 2012 Statut Membre Dernière intervention 7 août 2014 1 767
17 juil. 2012 à 15:42
Donc je vais proposer à tous les clients à qui est destiné cette plateforme Web d'installer un logiciel ? C'est un peu bête ... Tout peut être fait en php donc ...
0