France Hardware : Forums de discussion - Découvrez notre nouveau comparateur d'offres Internet
Retrouvez les prix près de chez vous :  
Index du forum | Liste des membres | Liste des groupes | Inscription | F-A-Q | Recherche
Pseudo :    Password :     
29 511 membres enregistrés - 2 069 318 posts - 122 026 topics
Index des forums FH  | Index des forums DegroupNews
      Programmation
           Langages
                [VB] depuis fichier CSV ou Excel, construire DB sous SQL
93 connectés(record : 2799 le 29 May 2016 - 15 h 34)

Vous devez vous connecter pour répondre au topic.
[VB] depuis fichier CSV ou Excel, construire DB sous SQL

machintruc
Coordinateur
In Tartiflette we trust

Messages : 805
Inscrit le 24/05/05
Non connecté
  Posté le 26 May 2009 - 10 h 21 m 09 s
Bonjour,

Je suis sous l'ide visual basic 2008 express (intègre SQL 2005 express) et je developpe en VB.
Je cherche à faire quelque chose qui ne me semblait pas trop difficile, mais je ne m'en sors pas trop.

Je souhaite, à partir d'un fichier CSV (mais je peux le transposer en .xls) extraire les données afin de construire une DB (sous SQL)

la 1ère ligne du fichier CSV (j'explique comme si c'etait un fichier excel) correspond à mes champs, les lignes suivantes correspondent à mes données.
Le nombre de données est variable d'un fichier à l'autre, les champs sont identiques.

Je ne sais pas trop si ma DB doit exister ou si je peux la construire lorsque je lance l'appli: lecture du fichier CSV, construction de la DB, écriture dans la DB, traitement avec les données de la DB
J'arrive à contruire une DB, mais pas par le code, seulement via l'IDE. J'aimerai que ce soit automatique.

si vous aviez une solution, des pistes... J'ai trouvé plusieurs tuto mais ça ne correspond pas trop à moins de n'avoir rien compris :D

merci


Message édité 1 fois, la dernière par machintruc le 26 May 2009 - 10 h 22.


Woofy
Totalement inutile, complètement indispensable

Messages : 31 539
Inscrit le 11/01/02
Ville : Lyon
Non connecté
  Posté le 26 May 2009 - 10 h 26 m 46 s
Et si tu fais un "CREATE DATABASE", puis tu crée tes tables avant d'importer ton CSV, le tout au début de ton code (et en SQL bien sur) ?
A moins que tu ne veuille créer ta/tes table en fonction des colonnes du CSV, et que ce soit dynamique ?
Bien sur, pour ça il faudra te connecter au moteur SQL avec un compte sa, ou au moins qui a les droits de créer des bases.




machintruc
Coordinateur
In Tartiflette we trust

Messages : 805
Inscrit le 24/05/05
Non connecté
  Posté le 26 May 2009 - 11 h 21 m 12 s
Il est clair qu'il est hors de question que les utilisateurs se connectent avec le compte sa, même à travers l'appli.
Je pourrai créer un compte spécial, mais ça me parait pas top.
Donc la création dynamique exit.

La création avant import est surement ce qu'il y a de mieux. Même si c'est au travers de l'appli, c'est transparent pour les utilisateurs. Je ne sais pas si c'est top mais je vais tester ça.
Merci

Pour les autres questions, le post reste ouvert :)


Message édité 1 fois, la dernière par machintruc le 26 May 2009 - 11 h 23.


Woofy
Totalement inutile, complètement indispensable

Messages : 31 539
Inscrit le 11/01/02
Ville : Lyon
Non connecté
  Posté le 26 May 2009 - 11 h 37 m 08 s
Tu peux éventuellement créer une base à l'avance, associer un compte, et créer les tables dynamiquement en utilisant ce compte.
Mais pour la création de base, ... a moins de mettre un truc au début qui te propose de créer une base ou d'en utiliser une existante, en entrant un login et un mot de passe pour se connecter à la base de donnée.
Ce qui t'obligera à communiquer tout ça à tes utilisateurs.

Après, pour insérer les données, une fois que tu arrive à récupérer tes valeurs colonnes par colonnes, un simple INSERT INTO table ('colonne1', 'colonne2', ...) VALUES ('valeur1', 'valeur2', ...) dans une boucle et ça roule.
Je ne connais pas le VB, mais faire ça prend pas longtemps (lire ligne par ligne, puis faire un explode sur le séparateur) donc ça ne doit pas être dur en VB.
Tu peux même, pour créer la structure de la base (une fois que la base est créée) exécuter une requête SQL qui aura été générée par l'exportation de la structure d'une base existante (je me comprend).
Ca va plus vite que de la réfléchir à la main en SQL.




machintruc
Coordinateur
In Tartiflette we trust

Messages : 805
Inscrit le 24/05/05
Non connecté
  Posté le 26 May 2009 - 15 h 04 m 54 s
J'ai trouvé ça sur le MSDN:
LINQ (Language-Integrated Query) facilite l'accès aux informations provenant de bases de données, y compris aux objets de base de données tels que les procédures stockées.

J'ai fait quelques tests avec une DB donnée en exemple et ça fonctionne.
Il faut creer une base puis une connexion via "class Link to SQL" dans l'IDE.
Je découvre un peu tout ça (dev VB, l'ide VB2008...), c'est un peu fastidieux mais j'avance.

Bon, je suis sur la bonne piste

Il ne me reste plus qu'à créer une db à integrer dans mon projet, pouvoir récupérer des donnés depuis un fichier et les intégrer dans ma DB ...

pour ceux que ça interesse: http://msdn.microsoft.com/fr-fr/library/bb385100.aspx


Message édité 1 fois, la dernière par machintruc le 26 May 2009 - 15 h 07.


Page genérée en 0.0921 secondes par RahForum 2.0 | Gzip off |  Stats |  Metaforums |  RSS
© 2004 Cerbere Systems.
Prix Matériel Informatique | Informatique Lyon | Informatique Grenoble | Informatique Annecy | Informatique Marseille | Informatique Bordeaux | Forum Informatique
ADSL | Actualité ADSL | Deligo | Appareil photo | Commande Au Volant
Creative Commons
Message Boards and Forums Directory