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

WinDev Discussion :

hchangeconnexion ne fonctionner pas avec base mysql


Sujet :

WinDev

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    211
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Décembre 2002
    Messages : 211
    Points : 65
    Points
    65
    Par défaut hchangeconnexion ne fonctionner pas avec base mysql
    Bonjour tout le monde

    hchangeconnexion ne fonctionne pas sur une base externe Mysql, si quelque'un à déjà rencontré le même soucie.

    Merci d'avance.

  2. #2
    Expert confirmé
    Homme Profil pro
    ?
    Inscrit en
    Juillet 2002
    Messages
    2 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : ?

    Informations forums :
    Inscription : Juillet 2002
    Messages : 2 379
    Points : 4 496
    Points
    4 496
    Par défaut
    Bonjour

    ça serait pas mal de voir le message d'erreur et éventuellement le code que tu utilises

    Et je te confirme que hChangeConnexion fonctionne avec toutes les bases gérées par Windev

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    211
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Décembre 2002
    Messages : 211
    Points : 65
    Points
    65
    Par défaut
    Bonjour

    Mon code est

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    ConnDossier est une Connexion
    res est un entier
    DossierSession est une chaîne
    DossierSession="DB2"
     
    HFerme(article)
    res=HFermeConnexion(ConnDossier)
    res= HDécritConnexion(ConnDossier,"user" ,"mp",Serveur,DossierSession,hAccèsNatifMySQL,hOLectureEcriture,"Server Port=3306;") 
     
    SI PAS HOuvreConnexion(ConnDossier) Erreur(ErreurInfo(errComplet))
    SI PAS HChangeConnexion(article,ConnDossier) Erreur(ErreurInfo(errComplet))
     
    HCréationSiInexistant(article)
     
     
     
    HLitRecherche(article,code,"0043",hIdentique)
    Trace(article.libelle)

    sur trace je reçoit le libelle de l'article sur la base de données en cours, et non pas celle que je viens de faire le hchangeconnexion..

    Merci d'avance..

  4. #4
    Expert confirmé
    Homme Profil pro
    ?
    Inscrit en
    Juillet 2002
    Messages
    2 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : ?

    Informations forums :
    Inscription : Juillet 2002
    Messages : 2 379
    Points : 4 496
    Points
    4 496
    Par défaut
    Bonjour

    Puisque tu utilises une variable de type "Connexion" je te conseille d'utiliser les propriétés de cette connexion plutôt que la syntaxe HDécritConnexion (bien que le résultat devrait être identique)

    Il suffit de modifier la propriété ..BaseDeDonnées de ta connexion

    Dans mon exemple j'ai deux bases : "test" et "test2" et la même table "clients" ayant un nombre de lignes différent dans chaque base

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    cnxMySql est une Connexion
     
    cnxMySql..Serveur = "localhost"
    cnxMySql..Utilisateur = "root"
    cnxMySql..MotDePasse = ""
    cnxMySql..Provider = hAccèsNatifMySQL
    cnxMySql..BaseDeDonnées = "test"
     
    HChangeConnexion(clients, cnxMySql)
     
    SI HOuvreConnexion(cnxMySql) ALORS
    	Info(HNbEnr(clients))				// Résultat = 3
    SINON
    	Erreur(HErreurInfo())
    FIN
     
    // Changement de base
    // Ici je pourais faire un HFermeConnexion puis un HOuvreConnexion mais ce n'est même pas nécessaire
    cnxMySql..BaseDeDonnées = "test2"
    Info(HNbEnr(clients))					// Résultat = 2

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    211
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Décembre 2002
    Messages : 211
    Points : 65
    Points
    65
    Par défaut
    Bonjour

    Désole ça marche pas, les deux méthodes me donner le même résultat..

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    211
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Décembre 2002
    Messages : 211
    Points : 65
    Points
    65

  7. #7
    Expert confirmé
    Homme Profil pro
    ?
    Inscrit en
    Juillet 2002
    Messages
    2 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : ?

    Informations forums :
    Inscription : Juillet 2002
    Messages : 2 379
    Points : 4 496
    Points
    4 496
    Par défaut
    Le code de test que j'ai mis fonctionne chez moi

    Il y a peut être un problème pour d'autres fonctions mais le post que tu indiques date quand même de la version 16 (en 2011)

    Mais je ne pourrais pas t’affirmer qu'il n'y aucun problème car les applications que j'ai développées avec MySql utilisent les fonctions SQLConnecte, SQLExcel etc ...
    Je fais simplement un "USE madatabase" pour sélectionner la base courante

    Et si tu fais un SELECT au lieu d'un HLitMachin ?

Discussions similaires

  1. Réponses: 5
    Dernier message: 03/05/2015, 16h00
  2. .exe ne fonctionne pas avec base de donnée liée
    Par EclairOChocola dans le forum ADO.NET
    Réponses: 1
    Dernier message: 19/03/2014, 22h47
  3. Curseur ne fonctionne pas avec Mysql
    Par larbiDida dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 19/04/2011, 17h51
  4. Réponses: 4
    Dernier message: 15/03/2007, 21h32
  5. Contenu DataSource.xml avec base Mysql
    Par PrinceMaster77 dans le forum XMLRAD
    Réponses: 3
    Dernier message: 11/03/2004, 13h59

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