Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

mplcrj

Trigger não funcionando

Recommended Posts

Boa tarde pessoal,

 

criei duas tabelas, uma chamada contatos e outra chamada contatos_java. Coloquei uma trigger BEFORE INSERT onde ela popula a tabela contatos_java depois de inserido na contatos.

A trigger compila normalmente porém não insere nada na tabela contatos_java.

 

Segue abaixo a trigger usada.

 

create or replace
trigger tg_contatos_dankia
before insert on CONTATOS
for each row
declare
pragma Autonomous_Transaction;
begin
insert into contatos_java
select seq_contatos_java.nextval,id_contatos,nome,endereco,datanascimento,sysdate from contatos
where id_contatos = :new.id_contatos;
commit;
end;
Alguém poderia me ajudar com isso?
Att,
Marcos P L Couto

Compartilhar este post


Link para o post
Compartilhar em outros sites

O select não funciona pois o registro não foi inserido , before e trans. Independente ,

use o insert mas insira direto aa váriaveis com o :new.campo

 

Neste caso não recomendo usar a transação autonoma.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu troquei para AFTER na trigger, porém a mesma compila e continua não inserindo na outra tabela.

 

Vi que esse método (insert com select) pode ser usado, porém não esta funcionando de nenhum jeito.

Compartilhar este post


Link para o post
Compartilhar em outros sites

O "insert from select" funciona mas você está com transação independente e isto afeta , creio (sem Oracle para testar) mas o select é desnecessário pois se tem os campos na tag "new"

 

insert into contatos_java

Values

(seq_contatos_java.nextval,

: new.id_contatos,

:new.nome,

:new.endereco,

:new.datanascimento,

sysdate)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.