Bonjour à tous,
Je viens vers vous pour une demande d'aide. Je suis actuellement entrain de développer une petite application, j'utilise une base de donnée MS SQL Server 2008 Express.
Dans mon application, j'ai une fenêtre qui "gère" la mise à jour d'une de mes tables. Tout les jours, je récupère un fichier csv (de quelques méga). Je le découpe et le traite ainsi :
C'est un peu barbare, et en plus pas très optimisé en vitesse de traitement. Là, je suis à plus de 30 minutes pour traiter 128000 lignes
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 string[] decoupe = File.ReadAllLines(pathDuFichier); for (int i = 1; i < decoupe.Length; i++) { string[] decoupeEnLigne = decoupe[i].Split(','); // Traitement si présent -> Update sinon Insert - en Linq To SQL. }
J'aurais voulu savoir s'il y avait une manière plus rapide (une commande SQL,...).
Pour ma part j'ai pensé à faire (toujours en restant dans mon idée), ouvrir plusieurs Thread pour traité le fichier.
Merci pour vos réponses, idées, sujétions.
Partager