cs_globule
Messages postés327Date d'inscriptionmardi 8 octobre 2002StatutMembreDernière intervention 6 octobre 2010
-
23 juin 2006 à 14:35
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 2015
-
24 juin 2006 à 15:53
Bonjour,
Je voudrais utiliser MySQL en réseau avec ADO et VB6
On m’a déjà bien aidé ce matin sur ce forum en m'indiquant le code ci dessous.
Cependant je me pose deux interrogations.
J'ai plusieurs postes sur un réseau LOCAL (pas internet)
J'ai installé MySQL server 5 sur mon poste et le driver connector-odbc-3.51.12
Mes postes sont partagés.
Comment transformer ce code (adapté au serveur), pour qu'il fonctionne sur un poste client : En gros, que faut il indiquer dans
"SERVER=??????;"
Il faut que cela soit simple, car mes clients ne sauront pas indiquer une adresse IP
De plus comment integrer la gestion des transactions dans ce code (pour éviter que ça plante en réseau)
Enfin, faut il modifier quelque chose pour prendre en charge la gestion innoDB (sachant que j'ai installé la dernière version de MySQL sur tous les postes)
Merci
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 23 juin 2006 à 19:05
Salut
Plusieurs problèmes :
- Ta connexion au poste serveur : Le serveur est le nom sur le réseau ethernet (et pas internet comme tu le dis).
L'appellation standard est l'adresse IP de cette machine.
Tu peux aussi utiliser l'appellation UNC de la machine, c'est à dire le nom de baptème tel que défini dans les paramètres réseau (exemple : PC582)
Si tu peux faire tourner un programme sur ta machine Serveur, regarde cette source (clique ici) qui permet de rechercher l'adresse IP de la machine qui héberge ton serveur.
- MySQL : De mémoire, dans le paramétrage du serveur MySQL, il faut mettre en commentaire ou supprimer la ligne "bind", ce qui permet au serveur de répondre à n'importe quelle machine et pas seulement à celle désignée comme administratrice.
Si ta connexion depuis une machine externe au serveur ne fonctionne pas, modifie ce paramètre + Fais des recherches de MySQL dans le forum.
- Ton code : Pour faire un Insert Into (ou un Delete), il ne faut pas utiliser de RecordSet.
Simplement maConn.Execute
Info que tu aurasi trouvé dans n'importe quelle source du site parlant de ADO.
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
Champion du monde de boule de cristal - 2005 Le savoir est la seule matière qui s'accro
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 24 juin 2006 à 15:44
Non, renseigne toi sur la conversion UNC - nom de disque/volume - IP.
L'appellation UNC s'emploie comme ceci : Chemin = "\\NomUNC\NomDisque\Sous-Répertoire\Fichier
Regarde aussi du côté du "voisinage réseau" dans la recherche des codes sur vbfrance. Des choses bien intéressantes, comme celle-ci : clique ici.
As-tu regardé la source du 'chercheur automatique de serveur' que je t'ai proposée ?
Elle pourrait répondre à ta demande si tu peux faire tourner en permanence un petit exe 'balise' sur le poste qui héberge la DB à laquelle tu dois accéder.
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
Champion du monde de boule de cristal - 2005 Le savoir est la seule matière qui s'accro
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 24 juin 2006 à 15:52
En explicatif de ce 'chercheur automatique de serveur' :
Le principe :
Chercher un serveur en envoyant une requète sur tous les ports X de toutes les machines du réseau (X est un port de 1 à 65535 convenu d'avance)
Une fois que le serveur a reçu cette demande (car il est en écoute sur ce port X), il répond à l'expéditeur (le client). Dans sa réponse, il y a son adresse IP.
Facile ensuite au client d'utiliser cette adresse pour se connecter
Par souci d'assurance, le serveur ne répond que si dans la demande il y a un mot clé comme son propre nom d'application. Comme ça on est sûr que ce n'est que notre serveur qui répondra.
C'est le système utilisé par les jeux en réseau pour s'auto-détecter.
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
Champion du monde de boule de cristal - 2005 Le savoir est la seule matière qui s'accro
Vous n’avez pas trouvé la réponse que vous recherchez ?