[RESOLVIDO] Mensagem de erro para valores repetidos
4 respostasResolvido
mysqlwindows-forms
L
lsramos
Estou em um pequeno projeto com Windows Forms e MySql.
Ao enviar o cadastro, se a matrícula já existir no banco, ele exibe o MessageBox com todas as linhas do erro, porque meu código, nessa parte, está assim:
Olha a minha sugestão é você utilizar o java pois é uma linguagem que é mais fácil de mexer com banco de dados e fazer transações no mesmo.E possui uma biblioteca espeçifica e fácil de lidar
L
lsramos
A minha sugestão seria usar Python que acho muito mais simples, mas foi pedido em C#, aí já viu né
Solucao aceita
Jhonatas_Tomaz
Bom.Faz um método com uma consulta no seu banco usando um select passando e faz um condição se (if) o campo definido no banco de dados como primary key e se ele retornar o objeto é porque existe e manda retornar o valor
L
lsramos1 like
Resolvi dessa forma mesmo. Criei um método para verificar e de acordo com o return (true/false) eu exibo o MessageBox falando do erro de forma mais clara do que retornava antes. O método ficou assim:
publicboolVerificaChapa(stringpChapa){stringsql="SELECT * FROM ASSOCIADOS WHERE NUMERO_CHAPA="+pChapa;varconnection=newMySqlConnection(ConnectionString);MySqlCommandcommand=newMySqlCommand(sql,connection);command.Parameters.Add("@NUMERO_CHAPA",MySqlDbType.Int32);connection.Open();varresult=command.ExecuteScalar();if(result!=null){return(int)result>0;}returnfalse;}
E o if para exibir o MessageBox:
elseif(VerificaChapa(txtChapa.Text)==true){
MessageBox.Show("Chapa já cadastrada.","Erro",MessageBoxButtons.OK,MessageBoxIcon.Error);}