Connection Mysql av Visual studio net 2003 [Résolu]

mourier2003 6 Messages postés jeudi 23 juin 2005Date d'inscription 9 janvier 2006 Dernière intervention - 5 janv. 2006 à 17:45 - Dernière réponse : mourier2003 6 Messages postés jeudi 23 juin 2005Date d'inscription 9 janvier 2006 Dernière intervention
- 9 janv. 2006 à 09:40
est-il possible de connecter une base de données MySQL avec du code visual basic net 2003 ? Je n'arrive pas !!!
Afficher la suite 

7 réponses

Meilleure réponse
gaa179 361 Messages postés mercredi 21 mai 2003Date d'inscription 12 novembre 2009 Dernière intervention - 6 janv. 2006 à 10:12
3
Merci
Salut,

Bonne et heureuse année.

Tu dois utiliser Mysql connector .NET à la place myODBC. Tu peux downloader le connector sur le site ww.mysql.com.

A+

Merci gaa179 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 98 internautes ce mois-ci

mourier2003 6 Messages postés jeudi 23 juin 2005Date d'inscription 9 janvier 2006 Dernière intervention - 7 janv. 2006 à 00:27
0
Merci
Après avoir piqué à droite et à gauche qq fragments, j’ai réussi !!


Eureka


J’ai en premier téléchargé sur le site de MySQL


mysql-connector-odbc-3.51.12-win32.msi




puis sur le site de MicroSoft


odbc_net.msi




J’ai exécute les deux puis je me suis mis au boulot !!! pas très fort, et j’ai écrit ça


Dans un module


Public MySQLdrv As String = "DRIVER={MySQL ODBC 3.51 _ Driver};SERVER=localhost;DATABASE=essai;UID=root;PASSWORD=;OPTION3;"


Public cnxMySQL As New Microsoft.Data.Odbc.OdbcConnection(MySQLdrv)






Et le script du form


Dim cmdselect As OdbcCommand = New OdbcCommand


Dim drSection As OdbcDataReader


Dim qry, sectyp1, sectyp2, a As String


Dim i As Integer


qry = "SELECT ch1,ch2 FROM t1"




Try


cnxMySQL.Open()


With cmdselect


.Connection = cnxMySQL


.CommandType = CommandType.Text


.CommandText = qry


drSection = .ExecuteReader


End With


drSection.Read()


sectyp1 = drSection(0)


sectyp2 = drSection(1)


Me.TextBox1.Text = drSection(0)


Me.TextBox2.Text = drSection(1)


'MsgBox(sectyp1 & " - " & sectyp2)


cnxMySQL.Close()




Catch ex As OdbcException


For i = 0 To ex.Errors.Count - 1


a = ex.Errors(i).SQLState


'MsgBox(a)


Select Case a


Case "HYT00"


MsgBox("La base de données n'est pas activée", MsgBoxStyle.Critical, "Erreur MySQL importante " + a)


Case "01S00"


MsgBox("La base de données n'est pas activée", MsgBoxStyle.Critical, "Erreur MySQL importante " + a)


Case Else




End Select


Next i


End Try








Ca marche très bien. En revanche je veux bien essayer autre chose et je suis tout ouies





a+
gaa179 361 Messages postés mercredi 21 mai 2003Date d'inscription 12 novembre 2009 Dernière intervention - 9 janv. 2006 à 07:12
0
Merci
Salut,

Ce n'est pas de cette manière que tu dois utiliser Mysql Connector. Tu utilises MyODBC ce qui n'est pas conseiller en .NET.
Pour utiliser le connector voici un exemple:

1) Ajouter la référence Mysql.Data.dll dans l'onglet .NET
2) Place le code suivant au début du form:
Imports MySql.Data.MySqlClient

3)Ajoute un datagrid sur le form

4) place le code suivant:


Private
Sub Form1_Load(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles
MyBase.Load



'connection



Dim cn
As MySqlConnection =
New MySqlConnection("Server=NomServer;user id=root;password=;database=BDTest")


cn.Open()



'requete



Dim cmd
As MySqlCommand =
New MySqlCommand("Select * from table1", cn)



Dim da
As MySqlDataAdapter =
New MySqlDataAdapter(cmd)



Dim ds
As
New DataSet



'read data


da.Fill(ds, "Data")



'fill datagrid


DataGrid1.SetDataBinding(ds, "Data")



End
Sub

A+
mourier2003 6 Messages postés jeudi 23 juin 2005Date d'inscription 9 janvier 2006 Dernière intervention - 9 janv. 2006 à 08:36
0
Merci
Bj,

Ok j'essai de suite

à+
mourier2003 6 Messages postés jeudi 23 juin 2005Date d'inscription 9 janvier 2006 Dernière intervention - 9 janv. 2006 à 09:29
0
Merci
re bj,

Deux problemes se posent !!
je ne trouve pas dans l'onglet .net la ref Mysql.data.dll
donc pas non plus data.mysqlclient
ou puis-je trouver cette data.dll ???


d'autre part, je ne sais pas comment mettre a jour un datagrid dans un form
sans etre obligé de fermer le form et de le recharger !!!


quand je delete une ligne du datagrid par requete sql je n'arrive pas virer
la ligne de ce datagrid


merci d'avance
gaa179 361 Messages postés mercredi 21 mai 2003Date d'inscription 12 novembre 2009 Dernière intervention - 9 janv. 2006 à 09:33
0
Merci
Tu dois faire un Browse et sélectionner la DLL dans C:\Program Files\MySQL\MySQL Connector Net 1.0.7\bin\.NET X.X en fonction de ta version.

Ce n'est plus comme en VB6, la connection avec la BD est automatiquement fermée après chaque requête SQL. Tu dois refaire la même chose qu' à l'ouverture du form.

A+
mourier2003 6 Messages postés jeudi 23 juin 2005Date d'inscription 9 janvier 2006 Dernière intervention - 9 janv. 2006 à 09:40
0
Merci
Ok, mais je bosse av easyphp 1.8 et je n'ai pas mysql !!!

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.