Import d'un fichier CSV en SQL

lionel-DIL Messages postés 1222 Date d'inscription   Statut Membre Dernière intervention   -  
 Glotch -
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

A.Nonymous
 
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   Statut Membre Dernière intervention   1 768
 
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
A.Nonymous
 
Si tu connais de meilleures solutions, utilises-les, testes-les et compares-les.
0
lionel-DIL Messages postés 1222 Date d'inscription   Statut Membre Dernière intervention   1 768
 
petit up.
0
lionel-DIL Messages postés 1222 Date d'inscription   Statut Membre Dernière intervention   1 768
 
up
0
lionel-DIL Messages postés 1222 Date d'inscription   Statut Membre Dernière intervention   1 768
 
up
0
A.Nonymous
 
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   Statut Membre Dernière intervention   1 768
 
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
A.Nonymous
 
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 1685 Date d'inscription   Statut Membre Dernière intervention   316
 
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   Statut Membre Dernière intervention   1 768
 
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 1685 Date d'inscription   Statut Membre Dernière intervention   316
 
...
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   Statut Membre Dernière intervention   1 768
 
-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 1685 Date d'inscription   Statut Membre Dernière intervention   316
 
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   Statut Membre Dernière intervention   1 768
 
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