Tutorial C# – Inserção de dados em MySQL
Criado por Hélio Moreira em 4 de Novembro de 2010 | 15 comentários
Na sequência de tutoriais anteriores, em que demonstrei como efectuar ligações entre o C# e bases de dados, hoje irei mostrar como inserir dados numa base de dados MySQL. Apesar de a ligação C# – MySQL não ser a mais utilizada, visto o C# ser uma linguagem mais orientada para o ambiente Windows, e o MySQL orientado para a Web, irão poder verificar que não existe nenhum “segredo”, e é até bastante simples a inserção de dados.
Antes de começar a ler este tutorial, é muito importante que tenha compreendido o anterior tutorial relacionado com este tema (Tutorial C# – Ligação a Base de Dados MySQL), visto que os primeiros passos são iguais.
Primeiro criamos uma base de dados no phpMyAdmin. Neste caso criei a base de dados com o nomepplware_bd.
Esta base de dados, terá uma tabela com o nome tabela_dados, com três campos:
- id (INT (5), AUTO_INCREMENT, Chave Primária)
- titulo (VARCHAR(25))
- descricao (VARCHAR(100))
Para que seja possível inserir dados numa base de dados MySql em C#, é necessário adicionar a referência MySql.Data. Para isso é necessário efectuar o download do mysql-connector-net-6.2.3. Depois é só correr o setup. (No fim é necessário reiniciar o Visual Studio)
Para adicionar uma referência:
- Clicar com o botão direito em Referência e fazer “Add Reference”.
- Seleccionar na lista MySql.Data no separador .NET
- Como a referência já está adicionada, temos de a inserir no código.
using MySql.Data.MySqlClient;
Agora vamos ao código
1º – Temos de adicionar um MySqlConnection, MySqlDataAdapter e um DataSet.
private MySqlConnection mConn; private MySqlDataAdapter mAdapter; private DataSet mDataSet;
O MySqlConnection, MySqlDataAdapter e o DataSet, são necessários para a conexão e leitura da base de dados.
2º – Criar o “layout” da mini aplicação.
3º – Código do botão “Gravar”
private void bt_Gravar_Click(object sender, EventArgs e) { // Início da Conexão com indicação de qual o servidor, nome de base de dados e utilizar /* É aconselhável criar um utilizador com password. Para acrescentar a password é somente necessário acrescentar o seguinte código a seguir ao uid=root;password=xxxxx*/ mConn = new MySqlConnection("Persist Security Info=False; server=localhost;database=pplware_bd;uid=root"); // Abre a conexão mConn.Open(); //Query SQL MySqlCommand command = new MySqlCommand("INSERT INTO tabela_dados (titulo,descricao)"+ "VALUES('" + tb_titulo.Text + "','" + tb_descricao.Text + "')", mConn); //Executa a Query SQL command.ExecuteNonQuery(); // Fecha a conexão mConn.Close(); //Mensagem de Sucesso MessageBox.Show("Gravado com Sucesso!","Informação",MessageBoxButtons.OK,MessageBoxIcon.Information); // Método criado para que quando o registo é gravado, automaticamente a dataGridView efectue um "Refresh" mostraResultados(); }
4º – Código do método de visualização de dados
private void mostraResultados() { mDataSet = new DataSet(); mConn = new MySqlConnection("Persist Security Info=False; server=localhost;database=pplware_bd;uid=root"); mConn.Open(); //cria um adapter utilizando a instrução SQL para aceder à tabela mAdapter = new MySqlDataAdapter("SELECT * FROM tabela_dados ORDER BY id", mConn); //preenche o dataset através do adapter mAdapter.Fill(mDataSet, "tabela_dados"); //atribui o resultado à propriedade DataSource da dataGridView dataGridView1.DataSource = mDataSet; dataGridView1.DataMember = "tabela_dados"; }
Este método será “chamado” no botão Visualizar, como exemplificado na imagem abaixo.
private void bt_visualizar_Click(object sender, EventArgs e) { mostraResultados(); }
E o resultado será:
E assim finalizamos este tutorial.
Como certamente verificaram, é extremamente simples fazer uma ligação e inserção com MySQL utilizando C#.
Espero que tenham gostado.
Download: Mysql Connector Net (6.2.3)
Homepage: MySql