Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

kania

Lista de erros MySql

Recommended Posts

Olá pessoal, aguem saber ame dizer onde posso encontrar a lista de números de erros que o servidor MySql pode gerar?

Quero criar umas mensagens amigáveis para o usuário na hora dele entrar, se ocorrer algum problema com o servidor, tipo ficar fora ar, ou algo parecido, ai em vez de dar aquele erro básico de conexão ele aparecer uma mensagem amigável.

 

Eu achei um pequena lista feita em PHP, adaptei para o Asp pórem não funcionou. Acho que os erros no PHP devem ser tratados já servidor PHP

 

Vejam como fiz:

 

If conn.errors.count = 2005 Then
	Response.Write "<div class=""erro"">O "&Servidor&" servidor nao existe</div>"

ElseIf conn.errors.count = 2003 Then
	Response.Write "<div class=""erro"">Servidor "&Servidor&" Mysql desligado</div>"

ElseIf conn.errors.count = 1045 Then
	Response.Write "<div class=""erro"">Usuario ou senha invalido</div>"

ElseIf conn.errors.count = 1049 Then
	Response.Write "<div class=""erro"">Banco de dados "&base&" nao encontrado</div>"

ElseIf conn.errors.count = 1146 Then
	Response.Write "<div class=""erro"">Erro de sql a tabela nao existe</div>"

ElseIf conn.errors.count = 1062 Then
	Response.Write "<div class=""erro"">Erro campo unico na tabela, nao pode cadastrar pois ele ja existe</div>"

ElseIf conn.errors.count = 0 Then
	'Response.Write "<div class=""correto"">Tudo certo com o servidor <strong>"&Servidor&"</strong></div>"
End If

 

Achei esta tabela http://translate.google.com.br/translate?hl=pt-BR&langpair=en%7Cpt&u=http://www.briandunning.com/error-codes/%3Fsource%3DMySQL, porem a numeração dos erros não estão funcionando, somente o erro 0 zero que quando não tem erro que funciona

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então modifiquei o código para

 

On Error Resume Next
If Err.number = 2005 Then
	Response.Write "<div class=""erro"">Esse servidor nao existe</div>"

ElseIf Err.number = 2003 Then
	Response.Write "<div class=""erro"">Servidor Mysql "&Servidor&" desligado</div>"

ElseIf Err.number = 1045 Then
	Response.Write "<div class=""erro"">Usuario ou senha invalido</div>"

ElseIf Err.number = 1049 Then
	Response.Write "<div class=""erro"">Banco de dados nao encontrado</div>"

ElseIf Err.number = 1146 Then
	Response.Write "<div class=""erro"">Erro de sql a tabela nao existe</div>"

ElseIf Err.number = 1062 Then
	Response.Write "<div class=""erro"">Erro campo unico na tabela, nao pode cadastrar pois ele ja existe</div>"

ElseIf Err.number = 0 Then
	Response.Write "<div class=""correto"">Tudo certo com o servidor <strong>"&Servidor&"</strong></div>"
End If

 

Estranho porque ele continua ignorando os erros com exceção do zero

Compartilhar este post


Link para o post
Compartilhar em outros sites

O problema é que os códigos de erro do "On Error Resume Next" (VB) são diferentes dos códigos de erro do MySql.

De acordo com seu exemplo, sempre retornará um erro de ODBC.

 

A sugestão seria simular os erros e verificar o retorno, depois tratar cada um deles na condição para apresentar a msg desejada ao user.

 

Att.

Compartilhar este post


Link para o post
Compartilhar em outros sites

olha este link, alguns erros gerados pelo MySQL, mas você pode verificar também diretamente os erros de OLEDB

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.