DECLARE
BEGIN
DBMS_OUTPUT.ENABLE(1000000);
DBMS_OUTPUT.PUT_LINE( 'Hello World!' );
XXxxxXX
EXCEPTION
DBMS_OUTPUT.PUT_LINE( 'ERrrorr' );
END;
/
EXCEPTION Genérica
-
- Rank: Programador Júnior
- Mensagens: 20
- Registrado em: Dom, 30 Jul 2006 10:14 pm
- Localização: São Paulo
Pessoal tenho esse bloco de código abaixo, gostaria de saber como faço para que QUALQUER erro que der no BEGIN caia no EXCEPTION?
Obrigado e fico no aguardo.
-
- Moderador
- Mensagens: 2016
- Registrado em: Qua, 12 Jan 2005 3:25 pm
- Localização: Araraquara - SP
Abraço,
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Brother,
Ai vai um exemplo:
Ai vai um exemplo:
BEGIN
... -- Teu corpo de execução aqui...
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE('ERRO: ' || SQLERRM);
END;
-
- Rank: DBA Sênior
- Mensagens: 365
- Registrado em: Ter, 24 Mai 2005 2:24 pm
- Localização: Araraquara - SP
Cristiano (Tineks)
Araraquara - SP
Araraquara - SP
Da forma que o Trevisolli passou sempre q ocorrer um erro a rotina será direcionada para o exception, e existe tb um outro recurso, que é você forçar a caida dentro de um exception quando desejado. Segue um exemplo.
como você pode ser no código acima não existe nenhum erro no procedimento, porem eu forcei a caida dentro do excetion através da do comando "RAISE ..."
fica ai a dica se algum dia precisar.!!
[]'s!
SQL> DECLARE
2 v_aux NUMBER := 1;
3 e_erro_forcado EXCEPTION;
4 BEGIN
5 IF v_aux = 1
6 THEN
7 RAISE e_erro_forcado;
8 END IF;
9 EXCEPTION
10 WHEN e_erro_forcado
11 THEN
12 DBMS_OUTPUT.put_line ('saindo pelo if..');
13 WHEN OTHERS
14 THEN
15 DBMS_OUTPUT.put_line ('Deu erro : ' || SQLCODE || ' - ' || SQLERRM);
16 END;
17 /
saindo pelo if..
PL/SQL procedure successfully completed.
fica ai a dica se algum dia precisar.!!
[]'s!
- Porva
- Rank: DBA Sênior
- Mensagens: 342
- Registrado em: Seg, 29 Jan 2007 7:36 am
- Localização: São Paulo/SP
Rafael S. Nunes
São Paulo/SP
São Paulo/SP
complementando isso que o Cristiano (Tineks) disse, um exemplo bem prático disso, por exemplo, foi numa tela que fiz para importação de arquivo texto, onde eu validava o layout do arquivo, posição de alguns campos e tipos de dados, etc, no caso se o usuário selecionasse um arquivo que não correspondia eu criei um exception chamado Arquivo_Errado, então eu invocava essa exceção criada por mim para desviar para a seção Exception, já que é um erro de lógica que o programador deve implementar, já que o Forms/Oracle não reconheceria.
-
- Informação
-
Quem está online
Usuários navegando neste fórum: Nenhum usuário registrado e 3 visitantes