
Como Fazer CRUD com MySQL em VB.net
Para fazermos CRUD em um banco de dados MySQL primeiro precisamos ter instalado o recurso connection/net para termos acesso ao Namespace no Visual Studio, para fazer a configuração veja este post.
Crie um novo projeto do tipo Window Forms App e adicione os seguintes controles:
- 3 Labels
- 3 TextBoxes
- 5 Buttons
- 1 DataGridView

Configure as Labels conforme a imagem acima, os outros controles da seguinte forma:
- TextBox1 – Name: txtID
- TextBox2 – Name: txtNome
- TextBox3 – Name: txtNumero
- Button1 – Name: btnNovo, Text: Incluir
- Button2 – Name: btnAlterar, Text: Alterar
- Button3 – Name: btnConsultar, Text: Consultar
- Button4 – Name: btnExcuir, Text: Excluir
- Button5 – Name: btnExibir, Text: Exibir
- DataGridView1 – Name: dgvDados
Agora que definimos as configurações dos controles precisamos adicionar a referência do MySQL no nosso projeto.
Para isso no Solution Explorer clique com o botão direito sobre o nome do projeto e selecione Add/Reference.

Na janela que se abre selecione a guia Assemblies e no campo de pesquisa digite MySQL. Na lista que aparecer selecione a opção MySql.Data.

Agora precisamos importar o Namespace no nosso projeto para podermos utilizar.
Imports MySql.Data.MySqlClient
Feito isso já podemos para para o código do primeiro botão que é o de inclusão.
Neste exemplo estou utilizando o banco de dados na minha máquina local, sendo assim na string de conexão o servidor vai estar configurado como localhost.
Agora vamos definir as variáveis de acesso, elas foram declaradas no início da classe para poderem ser acessadas em qualquer parte da classe Form1:
Private conexao As MySqlConnection
Private comando As MySqlCommand
Private da As MySqlDataAdapter
Private dr As MySqlDataReader
Private strSQL As String
Declaradas as variáveis agora vamos para o código do botão novo que será utilizado para inserir um novo registro na tabela CAD_CLIENTE.
Private Sub BtnIncluir_Click(sender As Object, e As EventArgs) Handles btnIncluir.Click
Try
conexao = New MySqlConnection("Server=localhost;Database=cliente;Uid=root;Pwd=@mar147;")
strSQL = "INSERT INTO CAD_CLIENTE (NOME, NUMERO) VALUES (@NOME, @NUMERO)"
comando = New MySqlCommand(strSQL, conexao)
comando.Parameters.AddWithValue("@NOME", txtNome.Text)
comando.Parameters.AddWithValue("@NUMERO", txtNumero.Text)
conexao.Open()
comando.ExecuteNonQuery()
Catch ex As Exception
MessageBox.Show(ex.Message)
Finally
conexao.Close()
conexao = Nothing
comando = Nothing
End Try
End Sub
Código do botão alterar:
Private Sub BtnAlterar_Click(sender As Object, e As EventArgs) Handles btnAlterar.Click
Try
conexao = New MySqlConnection("Server=localhost;Database=cliente;Uid=root;Pwd=@mar147;")
strSQL = "UPDATE CAD_CLIENTE SET NOME = @NOME, NUMERO = @NUMERO WHERE ID = @ID"
comando = New MySqlCommand(strSQL, conexao)
comando.Parameters.AddWithValue("@ID", txtID.Text)
comando.Parameters.AddWithValue("@NOME", txtNome.Text)
comando.Parameters.AddWithValue("@NUMERO", txtNumero.Text)
conexao.Open()
comando.ExecuteNonQuery()
Catch ex As Exception
MessageBox.Show(ex.Message)
Finally
conexao.Close()
conexao = Nothing
comando = Nothing
End Try
End Sub
Código do botão excluir:
Private Sub BtnExcluir_Click(sender As Object, e As EventArgs) Handles btnExcluir.Click
Try
conexao = New MySqlConnection("Server=localhost;Database=cliente;Uid=root;Pwd=@mar147;")
strSQL = "DELETE FROM CAD_CLIENTE WHERE ID = @ID"
comando = New MySqlCommand(strSQL, conexao)
comando.Parameters.AddWithValue("@ID", txtID.Text)
conexao.Open()
comando.ExecuteNonQuery()
Catch ex As Exception
MessageBox.Show(ex.Message)
Finally
conexao.Close()
conexao = Nothing
comando = Nothing
End Try
End Sub
Código do botão exibir:
Private Sub BtnExibir_Click(sender As Object, e As EventArgs) Handles btnExibir.Click
Try
conexao = New MySqlConnection("Server=localhost;Database=cliente;Uid=root;Pwd=@mar147;")
strSQL = "SELECT * FROM CAD_CLIENTE"
da = New MySqlDataAdapter(strSQL, conexao)
Dim dt As New DataTable
da.Fill(dt)
dgvDados.DataSource = dt
Catch ex As Exception
MessageBox.Show(ex.Message)
Finally
conexao.Close()
conexao = Nothing
comando = Nothing
End Try
End Sub
Código do botão consultar:
Private Sub BtnConsultar_Click(sender As Object, e As EventArgs) Handles btnConsultar.Click
Try
conexao = New MySqlConnection("Server=localhost;Database=cliente;Uid=root;Pwd=@mar147;")
strSQL = "SELECT * FROM CAD_CLIENTE WHERE ID = @ID"
comando = New MySqlCommand(strSQL, conexao)
comando.Parameters.AddWithValue("@ID", txtID.Text)
conexao.Open()
dr = comando.ExecuteReader()
Do While dr.Read
txtNome.Text = dr("nome")
txtNumero.Text = dr("numero")
Loop
Catch ex As Exception
MessageBox.Show(ex.Message)
Finally
conexao.Close()
conexao = Nothing
comando = Nothing
End Try
End Sub
Veja aqui o vídeo passo a passo:
