Exceções Predefinidas em Oracle PL/SQL

Olá! Bem-vindo ao nosso artigo sobre Exceções Predefinidas em Oracle PL/SQL. Hoje, vamos mergulhar nesse assunto e aprender como lidar com erros de forma elegante em nossos programas. Vamos lá?

O que são Exceções?

Imagine que você está dirigindo um carro. Normalmente, você segue em frente sem problemas, certo? Mas e se um pneu furar? Ou se acabar a gasolina? Essas situações inesperadas são como “exceções” na sua viagem.

No mundo da programação PL/SQL, as exceções funcionam de maneira similar. Elas são eventos inesperados que interrompem o fluxo normal do seu programa. E assim como você precisa saber como lidar com problemas no seu carro, é crucial saber como lidar com exceções no seu código.

Pre-requisitos para executar os exemplos

Criar os objetos abaixo e inserir valores nas tabelas:

Estrutura de um Bloco PL/SQL com Tratamento de Exceções

Vamos dar uma olhada na estrutura básica de um bloco PL/SQL que inclui tratamento de exceções:

É como se o seu código tivesse três partes:

  1. O planejamento da viagem (DECLARE)
  2. A viagem em si (BEGIN)
  3. O plano B para problemas (EXCEPTION)

Exceções Predefinidas Comuns

Oracle nos fornece várias exceções predefinidas. Vamos conhecer algumas das mais comuns:

1. NO_DATA_FOUND

Esta exceção é levantada quando um comando SELECT INTO não retorna nenhuma linha.

Exemplo:

2. TOO_MANY_ROWS

Esta exceção ocorre quando um SELECT INTO retorna mais de uma linha.

Exemplo:

3. ZERO_DIVIDE

Esta exceção é levantada quando tentamos dividir por zero.

Exemplo:

4. VALUE_ERROR

Ocorre quando há um problema de conversão ou incompatibilidade de tamanho.

Exemplo:

Tratando Múltiplas Exceções

Às vezes, precisamos estar preparados para lidar com diferentes tipos de problemas. É como ter um kit de emergência completo no seu carro. Veja como podemos tratar múltiplas exceções:

Neste exemplo, estamos preparados para duas situações diferentes: quando o aluno não está matriculado (NO_DATA_FOUND) e quando está matriculado em mais de um curso (TOO_MANY_ROWS).

O Coringa: WHEN OTHERS

Às vezes, não sabemos exatamente qual problema pode ocorrer. Para esses casos, temos o WHEN OTHERS. É como ter um plano de contingência geral.

Porém, cuidado! Usar apenas WHEN OTHERS pode mascarar erros específicos e dificultar a depuração. É como dizer “se algo der errado, apenas ignore”. Nem sempre é a melhor abordagem.

Conclusão

Entender e usar exceções predefinidas é crucial para criar programas PL/SQL robustos e confiáveis. Elas nos ajudam a lidar com situações inesperadas de forma elegante, melhorando a experiência do usuário e facilitando a manutenção do código.

Lembre-se: em programação, assim como na vida, é importante estar preparado para o inesperado. As exceções nos dão essa ferramenta.

Scroll to Top