Ir para conteúdo

Arquivado

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

Felipesudrj

Tratamento de erro

Recommended Posts

Supondo que eu mande executar a seguinte query

 

 

mysql_query="insert into tabela (numero_compra,valor)values('11','230.88')";

 

 

e la no meu banco existe a seguinte restrição no campo numero_compra...a restrição é não aceitar numeros duplicados...

 

e la no banco eu já tenho a compra 11...

 

 

 

como faço o tratamento...ou seja se a query não for executada aparecer a seguinte mensagem.."compra 11 já existe"..

 

 

agora outra situação vamos dizer que essa query esta em um while.....e não quero que ele pare de processar somente no final de informe que a compra 11 esta duplicada...alguem pode me mostrar um exemplo?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Supondo que eu mande executar a seguinte query

 

 

mysql_query="insert into tabela (numero_compra,valor)values('11','230.88')";

 

 

e la no meu banco existe a seguinte restrição no campo numero_compra...a restrição é não aceitar numeros duplicados...

 

e la no banco eu já tenho a compra 11...

 

 

 

como faço o tratamento...ou seja se a query não for executada aparecer a seguinte mensagem.."compra 11 já existe"..

 

 

agora outra situação vamos dizer que essa query esta em um while.....e não quero que ele pare de processar somente no final de informe que a compra 11 esta duplicada...alguem pode me mostrar um exemplo?

 

Olá.

 

Eu não acho "correto" você fazer esse tratamento no lado do Banco de Dados, até porque, a função dele é armazenar essas informações ( Posso estar errado, mas enfim ). Eu acharia correto você tratar esse tipo de ocorrência com a sua própria linguagem, por exemplo no php.

 

<?php
try
{ 
    // Verifica se já existe
    if($query['numeroCompra'] == $_POST['numeroCompra'])
    {
        throw new Exception('O ID número compra já existe no Banco de Dados');
    }
}catch(Exception $e)
{
   echo $e->getMessage();
}
?>

 

Eu faria utilizando essa lógica, mas você também pode usar algo um pouco mais complexo.

 

Segue o link -> Aqui

 

:grin:

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.