Tutorial C#–Inserção de dados em MySQL

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