Classe de connexion à une base mysql

Description

Cette classe va vous permettre de vous connecter à un serveur MySQL.
Elle comprend tout ce qui concerne l'ouverture d'une connexion, le passage de requetes de mise-à-jour et le retour de requetes ramenant uniquement un resultat (Ex : SELECT Nom FROM Client WHERE Num=1234)
La seul contrainte que vous aurez sera de donner la chaine de connexion au serveur ;-)

L'utilisation de cette source nécessite l'installation d'un driver supplémentaire sur Windows.
Celui-ci est contenu dans le .zip

Il faudra sélectionner le driver dans le gestionnaire de ressources de votre environnement de prog.

Source / Exemple :


Imports MySql.Data
Imports MySql.Data.MySqlClient

Public Class Connexion

    Private m_connexion As MySqlConnection

    Public Shared ConnexionStr As String

    Sub OuvrirConnexion()

        Dim VR As New Variables

        Me.m_connexion = New MySqlConnection("server=NOMDUSERVEUR;database=NOMDELABASEDEDONNEES;userid=IDENTIFIANT;password=MOTDEPASSE;")
        Me.m_connexion.Open()

    End Sub

    Sub FermerConnexion()

        Try
            Me.m_connexion.Close()

        Catch ex As System.Exception
            MessageBox.Show(ex.Message)
        End Try

    End Sub

    Function RetourneConnexion()
        Return m_connexion
    End Function

    Sub RequeteSUI(ByVal SQL As String)

        Me.OuvrirConnexion()

        Dim cmd As New MySqlCommand(SQL, Me.RetourneConnexion())

        cmd.ExecuteNonQuery()

        Me.FermerConnexion()

    End Sub

    Function RetourSelectUnResultat(ByVal SQL As String)

        Dim retour As Object = Nothing

        Me.OuvrirConnexion()

        Dim cmd As New MySqlCommand(SQL, Me.RetourneConnexion())
        Dim Reader As MySqlDataReader = Nothing

        Reader = cmd.ExecuteReader()

        While Reader.Read()
            retour = Reader.Item(0)
        End While

        Reader.Close()

        Return retour

        Me.FermerConnexion()

    End Function

    Function RetourRequete(ByVal SQL As String)

        Dim i As Integer = 0
        Dim j As Integer = 0
        Dim NbChamps

        Me.OuvrirConnexion()

        Dim cmd As New MySqlCommand(SQL, Me.RetourneConnexion())
        Dim Reader As MySqlDataReader = Nothing

        Reader = cmd.ExecuteReader()
        NbChamps = Reader.FieldCount()

        Dim retour(500, NbChamps) As Object

        While Reader.Read()
            For j = 0 To NbChamps
                retour(i, j) = Reader.GetValue(j)
            Next
            i = i + 1
        End While

        Reader.Close()

        Return retour

        Me.FermerConnexion()
    End Function

End Class

Conclusion :


Je pense la mettre à jour d'ici peu de temps afin de gérer tout ce qui concerne le retour de requete avec plusieurs résultats.

Codes Sources

A voir également

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.