Fórum PROCEDURE nao esta funcionando #557177

15/06/2016

0

criei esta procedure para que execute quando um registro de uma tabela chegar a determinado valor, a mesma deveria estar TRUNCANDO a tabela mas nao esta
ela compila sem erros mas nao TRUNCA a tabela.
por favor me ajudem

create or replace procedure "TRUNCAREINCIDENCIA"
(CDD_REINCIDENCIA IN OUT NUMBER)

is
CD_REINCIDENCIA REINCIDENCIA.CDREINCIDENCIA%TYPE;

begin

SELECT CDREINCIDENCIA INTO CD_REINCIDENCIA FROM REINCIDENCIA
WHERE CDREINCIDENCIA = (SELECT MAX(CDREINCIDENCIA) FROM REINCIDENCIA);


IF CD_REINCIDENCIA = 13 THEN
EXECUTE IMMEDIATE 'TRUNCATE TABLE REINCIDENCIA';
END IF;

end;
Italo Homero

Italo Homero

Responder

Posts

16/06/2016

Roberto Spernega

Bom dia Italo,

Quando você executa a PROCEDURE retorna algum erro?

Se não, tente colocar um tratamento de exception para retornar o erro.

E veja se a tabela REINCIDENCIA não tem nenhum dependente (FK), caso contrário não pode truncar.

exception
when too_many_rows then
dbms_output.put_line('Select retornou mais de uma linha');
when others then
dbms_output.put_line('Erro '||sqlerrm(sqlcode));
end;
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar