Visual Studio 2008 Visual Basic connect WAMP

scn68100 Messages postés 153 Date d'inscription dimanche 27 août 2006 Statut Membre Dernière intervention 26 décembre 2019 - Modifié le 21 oct. 2018 à 08:56
scn68100 Messages postés 153 Date d'inscription dimanche 27 août 2006 Statut Membre Dernière intervention 26 décembre 2019 - 20 nov. 2018 à 15:20
Bonjour,
J'essaye vainement de me connecter à ma base WAMP
Imports MySQLDriverCS
Public Class Form1
    Dim maconnexion As MySQLConnection
        Dim chaine As String = "server=localhost;Database=dbasorco;Uid=root;Pwd=;"
        Public wOK As Boolean = False    '   Pour tester les actions
    Public Sub OpenBaseDB()
        Try
            maconnexion = New MySQLConnection()
            maconnexion.ConnectionString = chaine
            maconnexion.Open()
        Catch ex As Exception
            MessageBox.Show("WmodBaseDonne - ConnectionBase " & vbCrLf & " Erreur dans la connection à la base de données " & vbCrLf & vbCrLf & ex.Message)
            wOK = False
            Exit Sub
        End Try
    End Sub
    Private Sub butOuvre_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles butOuvre.Click
        Call OpenBaseDB()
    End Sub
End Class

J'ai le message d'erreur :
MySQLDriverCS Error cant't connect
Comment faire ? J'ai cherché en vain une réponse sur le NET

Cordialement
SC

9 réponses

vb95 Messages postés 3417 Date d'inscription samedi 11 janvier 2014 Statut Contributeur Dernière intervention 20 mai 2023 165
17 nov. 2018 à 23:46
Bonjour !
A quelle ligne se produit cette erreur ?
Sous toute réserve si c'est à cette ligne
Dim chaine As String = "server=localhost;Database=dbasorco;Uid=root;Pwd=;"


Pwd n'est pas indiqué ( le mot de passe )
0
jordane45 Messages postés 37488 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 24 mai 2023 341
18 nov. 2018 à 08:38
Hello
Sous wamp, le compte root utilise, par défaut, un password vide. Donc c'est normal.
0
vb95 Messages postés 3417 Date d'inscription samedi 11 janvier 2014 Statut Contributeur Dernière intervention 20 mai 2023 165
18 nov. 2018 à 19:47
Bonjour !A tout hasard
MysqlConn.ConnectionString = "Server=localhost;Database=dbasorco;Uid=root;Pwd="";Port=8080"


Là le PassWord est vide ( les 2 guillemets après le signe = )
0
jordane45 Messages postés 37488 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 24 mai 2023 341 > vb95 Messages postés 3417 Date d'inscription samedi 11 janvier 2014 Statut Contributeur Dernière intervention 20 mai 2023
18 nov. 2018 à 20:21
Des doubles quotes dans des doubles quotes ?... ça ne passera pas....
En plus, le port 8080 ? pour du mysql ? .. 3306 à la limite... à moins qu'il n'est changé sont port d'écoute mais j'en doute.
0
vb95 Messages postés 3417 Date d'inscription samedi 11 janvier 2014 Statut Contributeur Dernière intervention 20 mai 2023 165
18 nov. 2018 à 20:23
quelle bourde ! Merci jordane45
0
scn68100 Messages postés 153 Date d'inscription dimanche 27 août 2006 Statut Membre Dernière intervention 26 décembre 2019
18 nov. 2018 à 07:38
Bonjour,
Je remet mon code, car j'ai fait d'autres essais, tous aussi infructueux les uns que les autres

Public Sub OpenBaseDB()
Try
Dim MysqlConn As MySQLConnection
MysqlConn = New MySQLConnection()
MysqlConn.ConnectionString = "Server=localhost;Database=dbasorco;Uid=root;Pwd=;Port=8080"
Try
MysqlConn.Open()
MessageBox.Show("Réussi !")
MysqlConn.Close()
Catch myerror As Exception
MessageBox.Show("Erreur : " & myerror.Message)
MessageBox.Show(myerror.StackTrace)
Finally
MysqlConn.Dispose()
End Try
Catch ex As Exception
wOK = False
Exit Sub
End Try
End Sub

L'erreur se produite à :

MysqlConn.Open()

Cordialement
Sauveur
0
jordane45 Messages postés 37488 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 24 mai 2023 341
18 nov. 2018 à 08:45
Bonjour,

Déjà.. il faut éviter d'utiliser le compte "root" pour une question de sécurité.
Il est préférable de créer un USER qui sera utilisé uniquement par ton application avec les droits sur la bdd désirée.

Si ton code VB se situe bien sur la même machine qui heberge la bdd , à la place de "localhost" tu peux essayer de mettre l'ip : 127.0.0.1

Ensuite, pour être sûr que la connexion (les identifiants) fonctionnent correctement, peux tu essayer
depuis un logiciel comme heidisql ? (http://codes-sources.commentcamarche.net/faq/10778-heidisql-tester-ses-requetes-sql)


PS: ton application est prévue pour toujours fonctionner sur la même machine que la bdd où as tu prévu de l'utiliser également depuis d'autres ordi ?
Si oui... évite la connexion direct à la bdd et utilise plutôt des web services.....




0
scn68100 Messages postés 153 Date d'inscription dimanche 27 août 2006 Statut Membre Dernière intervention 26 décembre 2019
19 nov. 2018 à 17:25
Bonjour,
Merci Je vais essayer Heidisql, et je rendrais compte
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
scn68100 Messages postés 153 Date d'inscription dimanche 27 août 2006 Statut Membre Dernière intervention 26 décembre 2019
19 nov. 2018 à 17:54
Voila, j'ai testé avec Heidisql et aucune erreur
C'est quoi les "web servicese" ?
0
jordane45 Messages postés 37488 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 24 mai 2023 341
19 nov. 2018 à 19:30
Un webservice c'est une api... une interface... une passerelle (appelle ça comme tu veux )

bon.. en gros... plutôt que d'attaquer directement ta bdd depuis un logiciel, tu vas interroger un script qui se trouve sur le serveur de la bdd et c'est lui qui s'occupe des échanges avec la bdd.
C'est, par exemple, le cas si tu veux utiliser une API de "geolocalisation" comme google ou celle du gouv : https://adresse.data.gouv.fr/api

Schéma : https://www.sodifrance.fr/blog/wp-content/uploads/2015/08/WS1.png

Dans ton cas... tu créés un script (en php par exemple) qui tu ira interroger depuis ton application VB et c'est ce script qui ira lire/ecrire les données dans ta base.
C'est comme ça que sont développées la majorité des applications (enfin....sauf celles réalisées par des néophytes devrais-je dire).

Les formats d'échanges les plus utilisés étant le XML et, plus récent et plus simple.. le format JSON )
0
scn68100 Messages postés 153 Date d'inscription dimanche 27 août 2006 Statut Membre Dernière intervention 26 décembre 2019
20 nov. 2018 à 07:44
Bonjour,
Merci pour ces informations détaillées
Effectivement, c'est une alternative intéressante

Mais j'aimerai quand même comprendre pourquoi je ne peux ouvrir la base sur WAMP
0
jordane45 Messages postés 37488 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 24 mai 2023 341
20 nov. 2018 à 09:43
Je vois que tu as utilisé le port 8080 ..... pourquoi ???
Le port 8080 est celui utilisé par apache (pour le php) que tu as du changé car tu avais sûrement un conflit sur le port 80.
Ca n'a AUCUN rapport avec la bdd

Mysql écoute sur le port 3306
MysqlConn.ConnectionString = "Server=localhost;Database=dbasorco;Uid=root;Pwd=;Port=3306"


Si ça ne fonctionne pas, tu peux essayer
MysqlConn.ConnectionString = "Server=127.0.0.1;Database=dbasorco;Uid=root;Pwd=;Port=3306"


Dans l'idéal.. on n'utilise pas le compte root dans des applis.
A la place, tu dois créer un utiliser spécifique (utilisateur mysql je veux dire hein.. ).
Depuis heidisql il est simple (très simple même ) de créer un utilisateur et de lui donner les droits sur ta bdd.
(pense à créer le user sur "localhost" ET le même sur "%"







0
scn68100 Messages postés 153 Date d'inscription dimanche 27 août 2006 Statut Membre Dernière intervention 26 décembre 2019
20 nov. 2018 à 10:25
Merci pour cette aide, et ces informations détaillées
J'ai repris les deux propositions pour ConnectionString, mais aucune ne marche !
0
jordane45 Messages postés 37488 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 24 mai 2023 341
20 nov. 2018 à 10:30
Donc tu as créé un user spécifique ?
Tu as dupliqué ce user pour l'avoir sur le host : localhost ET sur le host % ?
Tu as testé que la connexion de ce user fonctionnait avec heidsql ?
Et tu as changé ta chaine de connexion en utilisant ce user ?

Et le souci persiste ??
0
jordane45 Messages postés 37488 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 24 mai 2023 341
20 nov. 2018 à 11:25
0
scn68100 Messages postés 153 Date d'inscription dimanche 27 août 2006 Statut Membre Dernière intervention 26 décembre 2019
20 nov. 2018 à 15:20
Oui, j'ai créé un user comme indiqué, sur les deux
Idem hélas ….
Je vais voir le lien
Encore merci
0