Il blog per tutti gli smanettoni del pc

Collegarsi ad un database Mysql

gen 8

Visual Basic e tutti i linguaggi di programmazione .net permettono, anche se non in modo nativo, la connessione a un server mysql . Visual Studio non contiene  le librerie  , occorre quindi scaricarle ed installarle .  Sul sito ufficiale MYSQL, a questo indirizzo ( Scarica il Mysql Connector per VB.net ), è disponibile l’ultima versione del mysql connector per .net . Dopo averlo installato e dopo aver creato un nuovo progetto con visual studio dobbiamo aggiungere il riferimento alla libreria . In esplora soluzioni facciamo click con il tasto destro sul nome del progetto e selezioniamo Aggiungi Riferimento

Cliccare sulla linguetta .net e aggiungere la libreria Mysql.Data

L’applicazione che andremo a realizzare è costituita da 5 TextBox ,  4 label , 1 DataGridView e un Button.

( Accanto ad ogni textbox e button è presente il nome da dare all’elemento  )

Per correttezza e per rendere il codice più leggibile, inseriamo in testa al file form1.vb il comando per importare la libreria :

Imports MySql.Data.MySqlClient

Associamo la seguente sub quando l’utente clicca nel button Esegui :

Private Sub btn_start_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_start.Click
Dim connString As String = "Database=" & tb_database.Text & ";" & _
                         "Username=" & tb_user.Text & ";" &  _
                         "Password=" & tb_password.Text & ";" &  _
                         "Host=" & tb_host.Text & ";"
Dim conn As New MySqlConnection(connString)
Try
        conn.Open()
        Catch ex As MySqlException
            MsgBox("Errore nella connessione : " & ex.Message)
Finally
        Try
            Dim dataAdapter As New MySqlDataAdapter(tb_query.Text, conn)
            Dim table As New DataTable
            dataAdapter.Fill(table)
            DataGridView1.DataSource = table
            Catch ex As Exception
          MsgBox(ex.Message)
        End Try
End Try

Molto semplice vero ? Proviamo a commentare il codice per chi non è tanto pratico

Dim connString As String = "Database=" & tb_database.Text & ";" & _
                         "Username=" & tb_user.Text & ";" & _
                         "Password=" &  tb_password.Text & ";" & _
                         "Host=" & tb_host.Text & ";"

La variabile connString è una stringa che contiene i parametri per l’accesso al server mysql . Nel nostro caso i dati dovranno essere inseriti nelle 4 texbox in alto nel form .

Dim conn As New MySqlConnection(connString)

Conn è l’oggetto indispensabile per stabilire la connessione . Come parametro alla classe MysqlConnection passiamo la stringa creata precedentemente

Try
     conn.Open()
 
     Catch ex As MySqlException
            MsgBox("Errore nella connessione : " & ex.Message)

La funzione Open() prova a collegarsi all’host mysql specificato . Se qualcosa va storto viene visualizzato un messaggio con i dettagli dell’errore

Finally
    Try
         Dim dataAdapter As New MySqlDataAdapter(tb_query.Text, conn)
         Dim table As New DataTable
         dataAdapter.Fill(table)
         DataGridView1.DataSource = table
     Catch ex As Exception
         MsgBox(ex.Message)
     End Try
End Try
End Sub

Se la connessione al DB è avvenuta con successo creiamo l’oggetto dataAdapter e table . Quest’ultimo è un oggetto in grado di gestire i dati contenuti in una tabella . Con dataAdapter.Fill(table) non facciamo altro che memorizzare i dati restituiti dalla query mysql nell’oggetto table, infine segnaliamo al DataGridView1 di prelevare i dati nella tabella table Download progetto

Lascia un Commento