IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Accès aux données Discussion :

[VB.net 2.0/XSD] Connexion base de données dynamique


Sujet :

Accès aux données

  1. #1
    Membre régulier
    Inscrit en
    Novembre 2006
    Messages
    96
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Novembre 2006
    Messages : 96
    Points : 71
    Points
    71
    Par défaut [VB.net 2.0/XSD] Connexion base de données dynamique
    Bonjour,

    J'ai un probléme au sein de mon entreprise. Nous tentons de migrer une application Access vers VB.net.
    Jusque là, pas de probléme, le resultat est vraiment excellent. Néanmoins nous aurions besoin d'une fonction pré-implémentée dans Access qui ne l'est pas dans VS 2005 : changer la base de données de l'application.

    En effet nous avons une application qui permet de gérer les flux de production par activité. Nous avons au sein de notre entreprise 4 activités, donc l'application est installer sous 4 version, chaque version connectée à une base de données qui lui est propre. Néanmoins au départ, l'application est exactement la même, la différence se fait par rapport à la base de données attaquée (format SQL Server 2005).

    Et je ne sais absolument pas comment implémenter une fonction simple qui permette de dire au programme en deux clic "tu travail avec cette base de données" comme c'était le cas sous Access...

    Petite précision, je ne peut me passer du générateur XSD, car la migration est un projet, qui ne sera accepté que si il est tout aussi simple ou a peine plus simple de travailler sous Accfess que sous VB.net ... Donc le dataset fortement typé m'es bien utile...

    Je vous remercie pour votre attention, dans l'attente d'une réponse (parce que je suis vraiment dans la panade).

    Renaud

  2. #2
    Expert éminent
    Avatar de bidou
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2002
    Messages
    3 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 055
    Points : 7 962
    Points
    7 962
    Par défaut
    j'ai pas du bien comprendre la question. Normalement il suffit de changer la propriétés datasource de la chaine de connexion pour travailler avec la base ainsi désignée

  3. #3
    Membre régulier
    Inscrit en
    Novembre 2006
    Messages
    96
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Novembre 2006
    Messages : 96
    Points : 71
    Points
    71
    Par défaut
    Oui c'est vrai que c'est tirré par les cheveux...
    Je vais tacher d'être plus clair :

    J'ai défini dans mon application sous VS2005 un dataset fortement typé. Il est ma source de données générale.

    J'ai creer par interface graphique des formulaires liés aux données de cette source de données.

    J'ai 4 bases de données identique qui n'ont de différents que leurs données

    Je n'ai qu'une seule application, qui peut travailler avec au choix n'importe laquelle de ces bases de données.

    Je veux qu'il me soit possible de dire à l'applicartion, "cette fois tu va travailler avec cette base de données", puis plus tard "maintenant travaille avec celle-ci"

    Alors siu j'avais tout developpé par code, je sais trés bien comment il faudrait que je m'y prenne, il suffiré de changé la connectionstring. Mais comme tout est fait par interface graphique, je ne sais pas comment changer la source de données lors de l'execution du programme ...

    J'espere que ma description est assez claire. En tout cas merci pour ta réponse rapide.

    Renaud

  4. #4
    Expert éminent
    Avatar de bidou
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2002
    Messages
    3 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 055
    Points : 7 962
    Points
    7 962
    Par défaut
    as tu sauvegardé ta chaine de connexion dans les settings quand l'assistant te l'a proposé ?

  5. #5
    Membre régulier
    Inscrit en
    Novembre 2006
    Messages
    96
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Novembre 2006
    Messages : 96
    Points : 71
    Points
    71
    Par défaut
    Oui oui elle est sauvergardée, j'y ai accés quand je veux entre autre par My.Settings.MyConnectionString
    Mais celle ci est en lecture seule ... Ma premiere idée été de changer cette valeure, mais vu qu'elle est read only ...

  6. #6
    Expert éminent
    Avatar de bidou
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2002
    Messages
    3 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 055
    Points : 7 962
    Points
    7 962
    Par défaut
    Il suffit d'utiliser une variable globale de chaine de connexion en lieu et place de cette chaine, variable que tu pourras modifier par le code. Attention quand même de faire la modifcation de base de données cible avant l'instanciation des TableAdapters.

  7. #7
    Membre régulier
    Inscrit en
    Novembre 2006
    Messages
    96
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Novembre 2006
    Messages : 96
    Points : 71
    Points
    71
    Par défaut
    Oui mais ca sa fonctionne pour le code direct qui à besoin de données. Mais pour les formulaires qui utilise une datasource auto-généré par l'interface Visual ??

  8. #8
    Expert éminent
    Avatar de bidou
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2002
    Messages
    3 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 055
    Points : 7 962
    Points
    7 962
    Par défaut
    c'est pareil, les formulaires auto générés utilisent le code behind de leur fichier Designer. Si ton code de modification de chaine est placé en tout début d'application, ca sera bon pour tout le monde

  9. #9
    Membre régulier
    Inscrit en
    Novembre 2006
    Messages
    96
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Novembre 2006
    Messages : 96
    Points : 71
    Points
    71
    Par défaut
    Ah OK!
    Par contre j'ai encore une petite question vu que je débutte ...
    Ou se trouve cette connectionstring que je dois modifier par une variable. J'en ai trouvé une, mais dans le fichier de conf XML c'est tout ...

    Désolé de pas m'y connaitr eu peu plus...

  10. #10
    Expert éminent
    Avatar de bidou
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2002
    Messages
    3 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 055
    Points : 7 962
    Points
    7 962
    Par défaut
    dans le fichier Designer du Dataset typé. Fait une recherche de la chaine sur tout le projet.

  11. #11
    Membre régulier
    Inscrit en
    Novembre 2006
    Messages
    96
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Novembre 2006
    Messages : 96
    Points : 71
    Points
    71
    Par défaut
    J'ai trouvé dans le design de mon dataset deux fonctions InitConnection qui attribuent la valeur de My.Settings.MyConnectionString à la connection.
    J'ai remplacé cette ligne par une affectation d'une variable globales contenant ma nouvelle chaine de connection, puis j'ouvre mon formulaire avec la méthode showdialog ... et rien ne se passe.

    En debug il rentre dans le design du dataset, apparement il ne peut me faire debugger la fonction initconnection même avec la mention "debug code non managé", mais une fois toutes les étapes terminé, le formulaire ne s'ouvre pas ...

  12. #12
    Expert éminent
    Avatar de bidou
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2002
    Messages
    3 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 055
    Points : 7 962
    Points
    7 962
    Par défaut
    Je ne vois pas trop pourquoi, si je fais une manip comme cela chez moi ca marche nickel

  13. #13
    Membre régulier
    Inscrit en
    Novembre 2006
    Messages
    96
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Novembre 2006
    Messages : 96
    Points : 71
    Points
    71
    Par défaut
    Tu veux dire que tu modifie le InitConnection ???
    Ben je ré-essaye avec un nouveau projet de test, avec un simple formulaire et une simple source de données.

  14. #14
    Membre régulier
    Inscrit en
    Novembre 2006
    Messages
    96
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Novembre 2006
    Messages : 96
    Points : 71
    Points
    71
    Par défaut
    Ca marche!
    J'ai juste un dernier petit probléme :
    - Je modifie le designer du dataset par code pour faire en sorte que la connectionstring général mais ma variable global
    - Je modifie un ou deux parametres du dataset par l'interface graphique de modification de dataset

    => Toutes les modifications de mon dataset faites à la main sont effacées!

    Il n'y a pas une solution pour évité cela, parce que si il faut que je rajoute la petite modif aprés chaque mise à jour du dataset, c'est pas terrible.

    Merci d'avance!
    Renaud

Discussions similaires

  1. Problème connexion base de données MySQL avec VB.net
    Par fridrai dans le forum Administration
    Réponses: 3
    Dernier message: 28/05/2013, 18h59
  2. Réponses: 1
    Dernier message: 22/07/2011, 14h30
  3. [Tomcat][Oracle] connexion base de donnes debutant....
    Par yogz dans le forum Tomcat et TomEE
    Réponses: 8
    Dernier message: 16/07/2004, 13h32
  4. [XMLRAD] Connexion Base de données Informix
    Par clisson dans le forum XMLRAD
    Réponses: 3
    Dernier message: 14/01/2003, 13h46
  5. connexion base de donné
    Par saidi dans le forum MFC
    Réponses: 3
    Dernier message: 07/08/2002, 22h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo