Csv base de données c#
Mopadi
-
ryko1820 Messages postés 1878 Statut Membre -
ryko1820 Messages postés 1878 Statut Membre -
Bonjour,
J aimerai avoir un renseignement concernant l implémentation d un code C# me permettant d enregistrer sur une base de données toutes les entrées d un document Csv correctement formaté.
Jusqu a présent j'utilisais entity framework, mais pour passer du csv a la base de données il me faut faire une boucle, qui lit chaque ligne, crée un objet et l enregistre dans la bdd.
Malheureusement mes documents font des milliers de ligne et c est trop long.
J ai cru voir que avec mysql c était gère nativement et que je pouvais peut être envoyer directement le contenu d un Csv dans une table et bien plus rapidement.
Ma question c est quelle base de données je dois utilisais qui m aiderai à gérer et traiter toutes mes données venant d un CSV bien plus rapidement si possible.
Je suis ouvert à toute proposition, oracle mysql, sql server ou mongodb ou autre.
Dans l avenir mon site devrai être en ligne, donc j espère que la solution propose ne sera pas trop difficile à mettre en place haha.
Je peux suivre toute sorte de tutoriel, donc j aimerai juste savoir dans lequel je devrai me lancer, et si pouviez aussi me dire pourquoi tel ou tel solution.
Merci
Envoyé de mon iPhone
J aimerai avoir un renseignement concernant l implémentation d un code C# me permettant d enregistrer sur une base de données toutes les entrées d un document Csv correctement formaté.
Jusqu a présent j'utilisais entity framework, mais pour passer du csv a la base de données il me faut faire une boucle, qui lit chaque ligne, crée un objet et l enregistre dans la bdd.
Malheureusement mes documents font des milliers de ligne et c est trop long.
J ai cru voir que avec mysql c était gère nativement et que je pouvais peut être envoyer directement le contenu d un Csv dans une table et bien plus rapidement.
Ma question c est quelle base de données je dois utilisais qui m aiderai à gérer et traiter toutes mes données venant d un CSV bien plus rapidement si possible.
Je suis ouvert à toute proposition, oracle mysql, sql server ou mongodb ou autre.
Dans l avenir mon site devrai être en ligne, donc j espère que la solution propose ne sera pas trop difficile à mettre en place haha.
Je peux suivre toute sorte de tutoriel, donc j aimerai juste savoir dans lequel je devrai me lancer, et si pouviez aussi me dire pourquoi tel ou tel solution.
Merci
Envoyé de mon iPhone
A voir également:
- Csv base de données c#
- Fuite données maif - Guide
- Base de registre - Guide
- Supprimer les données de navigation - Guide
- Tnt base de données vide - Forum TNT / Satellite / Réception
- Formules mathématiques de base - Télécharger - Études & Formations
2 réponses
Bonsoir,
qu'est ce qui prend le plus de temps?
La lecture du csv avec création d'objets, ou la sauvegarde dans la bdd?
Coté bdd, je suis incompétent, mais je peux peut être t'aider à optimiser la première partie.
qu'est ce qui prend le plus de temps?
La lecture du csv avec création d'objets, ou la sauvegarde dans la bdd?
Coté bdd, je suis incompétent, mais je peux peut être t'aider à optimiser la première partie.
Je dirais volontiers sans plus de recherche, que compte tenu de l'ancienneté du format de données considéré (le CSV), la quasi totalité (si ce n'est la totalité) des bases de données évoquées plus haut disposent en natif de possibilité d'importation de CSV.
Exemple MYSQL : https://www.mysqltutorial.org/basic-mysql-tutorial-aspx/import-csv-file-mysql-table/
ou Oracle : http://www.orafaq.com/node/848
en utilisant BULK INSERT ou bcp avec SQL Server
etc ...
Pas besoin de coder l'import, il faut utiliser l'interface prévue par chaque BDD, ce qui sera très probablement le plus performant et le plus simple.
Là ou il pourrait être intéressant de coder l'import c'est si on veut pouvoir disposer d'une solution indépendante de la base de données (fonctionnant avec n'importe quelle base de données), dans l’éventualité ou cette solution devrait être distribuée.
Même dans ces cas là il existe des outils comme https://csvkit.readthedocs.io/en/0.9.1/
(voir csvsql)
You may stop me but you can't stop us all ;-)
Exemple MYSQL : https://www.mysqltutorial.org/basic-mysql-tutorial-aspx/import-csv-file-mysql-table/
ou Oracle : http://www.orafaq.com/node/848
en utilisant BULK INSERT ou bcp avec SQL Server
etc ...
Pas besoin de coder l'import, il faut utiliser l'interface prévue par chaque BDD, ce qui sera très probablement le plus performant et le plus simple.
Là ou il pourrait être intéressant de coder l'import c'est si on veut pouvoir disposer d'une solution indépendante de la base de données (fonctionnant avec n'importe quelle base de données), dans l’éventualité ou cette solution devrait être distribuée.
Même dans ces cas là il existe des outils comme https://csvkit.readthedocs.io/en/0.9.1/
(voir csvsql)
You may stop me but you can't stop us all ;-)
Merci
Mais par C# "sans boucle"à proprement parlé, je sais faire.... avec Linq.