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.
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.
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
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..
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
Bonjour
Désole ça marche pas, les deux méthodes me donner le même résultat..
Problème déjà confirmé
http://forum.pcsoft.fr/fr-FR/pcsoft....mysql/read.awp
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 ?
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager