VB.NET - Acessando o MySQL
Já tratei do MySql em diversos artigos no site, desde os tempos do VB5 passando pelo VB6 até chegar no VB.NET e ASP.NET. A relação de artigos abaixo não me deixa mentir:
VB .NET -
Criando uma conexão com o MySQL via ODBC
VB .NET - Strings de Conexão e Provedores de dados
ASP.NET - Acessando o MySQL
MySQL - Vinculando , Importando e Exportando tabelas do
Access
Visual Basic - Acessando MySQL com ADO usando um Driver
ODBC
Visual Basic - Acessando MySQL com ADO
VB e MySQL - Gerenciando dados
MySQL - Distribuindo o MySQL com sua aplicação
MySQL - Operações básicas com SQL
Volto ao assunto para mostrar como acessar o MySQL via VB.NET usando o provedor específico para o MySQL, sem precisar usar um provedor ODBC. Vou usar o provedor MySQL Connector/NET que você pode baixar do site do MySQL.
Antes de iniciar o projeto VB.NET para realizar a conexão você vai precisar ter os seguintes componentes instalados:
MySQL
MySQL Query Browser
MySQL Connector/NET
1 - Instalando o MySQL
Atualmente existem 3 versões estáveis do MySQL disponíveis para download: MySQL 4.0, MySQL 4.1, and MySQL 5.0.
Neste artigo vou usar o MySQL 4.1 que você pode baixar no endereço : http://dev.mysql.com/downloads/mysql/4.1.html
Existem 3 sabores disponíveis : Windows Essentials, Windows, e Without installer .Para os propósitos deste artigo o sabor Windows Essentials pode ser usado sem problema algum. Faça o download e instale o MySQL seguindo as instruções.
2- Instalando o MySQL Query Browser
O MySQL Query Browser é uma ferramenta com uma interface gráfica que permite criar, editar tabelas e navegar pelo conteúdo das tabelas fazendo as alterações que você desejar.
Para detalhes de operação do MySQL Query Browser você pode acessar a documentação em : http://dev.mysql.com/doc/query-browser/en/index.html.
Faça o download do MySQL Query Browser no seguinte endereço : http://dev.mysql.com/downloads/query-browser/index.html
Após o download instale a ferramenta seguindo as instruções do assistente.
3- Instalando o MySQL Connector/NET
O MySQL Connector/NET é um dos provedores com mais recursos para o MySQL, foi escrito em C# , possui código gerenciado, e pode ser portado para qualquer plataforma que suporta o .NET incluindo o Mono . Uma vantagem do MySQL Connector/NET é usar um protocolo nativo MySQL. Ele esta disponível gratuitamente sob os termos da GNU Public License.
Faça o download do MySQL Connector/NET no endereço : http://dev.mysql.com/downloads/connector/net/
Assumindo que você instalou os componentes com sucesso , vamos continuar...
Verificando os detalhes finais
Quando você instala o MySQL vai notar que , por padrão, ele vem com o banco de dados test que você pode usar para efetuar os seus testes. Mas vou aproveitar a ocasião e mostrar uma ferramenta que você pode usar para migrar seu banco de dados Access para o MySQL.
Neste artigo eu vou migrar o banco de dados northwind.mdb com todas as suas tabelas para o MySQL usando uma ferramenta grátis chamada Access to MySQL que você pode pegar no endereço : http://www.bullzip.com/download.php
O Access to MySQL que converte o seu banco de dados Access para MySQL e possui os seguintes recursos:
Após baixar o Acess to MySQL execute-o e após a primeira tela você deverá informar o caminho do banco de dados Access que deseja migrar:
A seguir informe os parâmetros para efetuar a conexão com o MySQL. (Eu estou me conectando como root mas é aconselhável criar um novo usuário.)
Na etapa seguinte selecione as tabelas que deseja migrar.
Antes de efetuar a migração você pode selecionar se deseja transferir os índices e os registros e as informações padrão e auto-numeração dos campos.
Pronto ! Seu banco de dados Access virou MySQL...
Vamos usar a ferramenta MySQL Query Browser para visualizar as tabelas e os registros para verificar se tudo ocorreu sem problemas.
Ao iniciar o MySQL Query Browser você deverá informar os parâmetros para efetuar a conexão com o MySQL:
Após a conexão podemos visualizar o banco de dados northwind e suas tabelas. Selecionando a tabela customers podemos exibir os registros conforme figura abaixo:
Criando o projeto VB.NET para conexão com o MySQL
Vamos agora ao projeto VB.NET. Crie um novo projeto chamado MySqlNet no VS.NET (ou no VB.NET 2005 Express Edition) do tipo Windows Application usando a linguagem VB.NET e no formulário padrão inclua um componente DataGrid.
Neste momento devemos incluir no projeto uma referência ao provedor MySQL Connector/NET que foi instalado. Para isto clique com o botão direito do mouse sobre o projeto e selecione a opção Add Reference.
Na janela Add Reference escolha a opção MySQL.Data.dll conforme abaixo:
Agora podemos usar o imports para o namespace MySql.Data.MySqlClient conforme abaixo:
Imports
MySql.Data.MySqlClientE a seguir podemos declarar as variáveis usadas no projeto no início do formulário form1.vb:
Dim
conn As New MySqlConnectionAgora vamos incluir o código que faz a conexão com o MySQL e acessa o banco de dados northwind exibindo os registros da tabela employees.
Vou colocar o código no evento Load do formulário form1.vb:
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
conn = New
MySqlConnection conn.ConnectionString = "server=localhost;user id=root;password=mac;database=northwind"
conn.Open() Try myCommand.Connection = conn myCommand.CommandText = SQL myAdapter.SelectCommand = myCommand myAdapter.Fill(myData) DataGrid1.DataSource = myData Catch myerro As MySqlException MsgBox("Erro de leitura no banco de dados : " & myerro.Message) End Try MessageBox.Show("Conexão aberta com sucesso") conn.Close() Catch myerro As MySqlException MessageBox.Show("Erro ao conectar com o Banco de dados : " & myerro.Message) Finally conn.Dispose() End Try End Sub |
Veja a string de conexão usada : conn.ConnectionString = "server=localhost;user id=root;password=mac;database=northwind"
(Não é muito legal exibir a senha em aberto não é mesmo???)
E instrução SQL menciona o banco de dados e a tabela usada : SQL = "SELECT * FROM northwind.employees"
O resto do código é idêntico aos demais exemplos já exibidos no site para Access e SQLServer.
Ao final teremos os registros da tabela employees exibidos no datagrid conforme figura :
Meu objetivo foi mostrar como realizar a conexão com o MySQL sem usar ODBC e ele esta cumprido. A partir deste ponto as demais operações são semelhantes ao que já foi discutido em diversos artigos sobre acesso a dados no site.
Pegue o projeto aqui : mySqlNet.zip. O resto, agora é com você...
Eu sei é apenas VB.NET mas eu gosto...
Veja os
Destaques e novidades do SUPER DVD Visual Basic
(sempre atualizado) : clique e confira !
Quer migrar para o VB .NET ?
Quer aprender C# ??
|
Gostou ?
Compartilhe no Facebook
Compartilhe no Twitter
Referências:
Super DVD Vídeo Aulas - Vídeo Aula sobre VB .NET, ASP .NET e C#