Operação de Dados MySQL com try/catch

Em programação O.O. é comum o uso do try/cacth para testar eventuais problemas que possam ocorrer durante a execução do programa. Este problemas eventuais são chamados de exceções.

Imagine o usuário tentando cadastrar duas vezes uma mesma chave primária no sistema. Isso poderia travar o sistema pois o servidor MySQL iria recusar executar o comando passado pela aplicação.

No entanto, podemos capturar o erro retornado do servidor MySQL e tratá-lo antes que a aplicação trave, fazemos isso usando um conjunto de try/catch.

Podemos dizer que se parece com um IF/ELSE, mas ele vai muito mais além.

O bloco try é responsável pelo teste bem sucedido, enquanto o catch é responsável por tratar o erro e criar uma rotina de excessão. Para criarmos um botão de adicionar com try/catch, o código seguiria este exemplo;

 

MySqlConnection Conecta = ConectaAero.ConectaLogo();
MySqlCommand Inserir = new MySqlCommand();
Inserir.Connection = Conecta;
Inserir.CommandText = “INSERT INTO tb01_aeronove (tb01_prefixo, tb01_modelo) VALUES (‘” + 
TxtPrefixo.Text + “‘, ‘” + 
TxtModelo.Text + “‘)”;
try
{
Inserir.ExecuteNonQuery();
Conecta.Close();
MessageBox.Show(“Avião cadastrado com sucesso!”); 
}
catch (Exception ex)
{
MessageBox.Show(“Erro: ” + ex.Message);
}

A imagem a seguir mostra o bloco catch em ação, exibindo a mensagem de erro ao usuário.