trigger cursor

Dúvidas, dicas e truques de PL/SQL. Aqui também vão assuntos relacionados a pacotes, triggers, funções, Java-Stored Procedures, etc
Responder
reenanneliaas
Rank: Estagiário Sênior
Rank: Estagiário Sênior
Mensagens: 12
Registrado em: Ter, 02 Set 2014 11:01 am

aí pessoal, estou com um pequeno problema.
estou tentando fazer uma trigger com cursor.

mais quando testo ela, aparecer um erro de cursor invalido.
segue o código abaixo
muito obrigado desde já.

Selecionar tudo

create or replace TRIGGER trg_tb_usuario
BEFORE INSERT
ON Usuario REFERENCING NEW AS NEW OLD AS OLD FOR EACH ROW

declare
cursor c_EstAlunom is
select Quantidade, NOME_USUARIO
from Estatisticas_Usuario;

v_existe number;
v_aluno varchar2(100);

begin
 LOOP
 FETCH c_EstAlunom into v_existe, v_aluno;
  
  if v_existe > 0 then
    update Estatisticas_Usuario eu
       set Quantidade = v_existe + 1 , nome_usuario =  :NEW.Nome_aluno;
    else
    insert into Estatisticas_Usuario values(1, :NEW.Nome_aluno);
  end if;
end loop;
close c_EstAlunom;
end;
Avatar do usuário
dr_gori
Moderador
Moderador
Mensagens: 5024
Registrado em: Seg, 03 Mai 2004 3:08 pm
Localização: Portland, OR USA
Contato:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

Parece que está faltando o OPEN CURSOR.
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 9 visitantes