Pular para o conteúdo

Fóruns SQL e PL/SQL trigger insert em um determinado campo de uma tabela trigger insert em um determinado campo de uma tabela

#105628
bruno_dba
Participante

    Muito obrigado @fbifabio

    com seu exemplo criei a trigger abaixo, funcinou legal em teste, mas quando crio em produção, gera locks com os usuarios que estão inserindo pedidos na tabela.

    CREATE OR REPLACE TRIGGER “teste”.”TESTE”
    after insert on teste
    referencing new as new
    for each row
    begin
    if :new.obs is not null
    then
    insert into audit_log
    (new_obs,alterado,quando,maquina, osuser)
    values
    (:new.obs, user, sysdate, sys_context(‘USERENV’,’HOST’),sys_context(‘USERENV’,’O
    S_USER’));
    end if;
    end teste;

    Testando

    inseri um registro na tabela

    SQL> insert into teste values (‘teste para gravar na trigger’, ‘teste’);

    1 row created.

    SQL> commit;

    Commit complete.

    fiz o select na tabela de log;

    NEW_OBS ALTERADO QUANDO MAQUINA OSUSER


    teste para gravar na trigger TESTE 28/06/13 srvoracle01 oracle

    a tabela em produção tem mais de 60 campos é uma das mais utilizadas, será que tem algo na trigger que posso alterar ?

    mais uma vez obrigado

    abs