Whoot 0 Denunciar post Postado Fevereiro 2, 2006 Pessoal é o seguinte eu tenho um PROCEDURE grande (ou melhor demorado) que faz uma pesquisa em varias tabelas e insere os dados em uma outra só que esta dando erro por causa de chave duplicada eu estou querendo fazer uma EXCEPTION onde logo depois do insert eu coloco --Inicio da EXCEPTION EXCEPTION WHEN DUP_VAL_ON_INDEX THEN raise_application_error (-20001,'Existe algum registro Duplicado! Favor verificar...'); WHEN OTHERS THEN raise_application_error (-20002,'Ocorreu algum erro na hora de inserir os dados! Favor verificar...'); --FIM DA EXCEPTION Acho q ate ai esta correto, mas a duvida é a seguinte: Se eu colocar essa EXCEPTION o processo vai parar e dar o erro ou ele vai rodar tudo e no fim ele vai dar a minha mensagem e vai concluir a inserção para os dados que não forem duplicados? Desculpe a ignorância é q eu sou novo nesse negocio hhehehe http://forum.imasters.com.br/public/style_emoticons/default/ermm.gif Valeu Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Fevereiro 2, 2006 Troque o raise pela gravação numa tabela de erros depois você verifica o ocorrido BEGIN INSERT INTO TABELA VALUES (VN_CHAVE,VN_DETALHE); EXCEPTION WHEN DUP_VAL_ON_INDEX THEN INSERT INTO TABELA_ERRO (VN_CHAVE||VN_DETALHE); END; Compartilhar este post Link para o post Compartilhar em outros sites
MonTiLLa 1 Denunciar post Postado Fevereiro 2, 2006 Tipo, Com esse codigo que você colocou vai rodar normalmente a aplicacao e no final ele mostra os erros... Seria interresante você lancar uma mensagem de erro criada por você e verificar no final os erros que ocorreram: set serveroutput on size 1000000 begin --Inicio da EXCEPTION EXCEPTION WHEN DUP_VAL_ON_INDEX THEN DBMS_OUTPUT.PUT_LINE('aki você coloca alguma coisa' || codigo ); WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE('aki você coloca alguma coisa' || codigo ); --FIM DA EXCEPTION end: / Essa maneira e legal para você ir debugando e achando os erros... http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
Whoot 0 Denunciar post Postado Fevereiro 3, 2006 Ai pessoal valeu ajudou muito!! http://forum.imasters.com.br/public/style_emoticons/default/clap.gif http://forum.imasters.com.br/public/style_emoticons/default/joia.gif http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Obrigadu Compartilhar este post Link para o post Compartilhar em outros sites