Frasson, senti saudades de vc's...
Bom, eu fiz isso que vc falou, mas infelizmente quando a tabela controle
dispara a triigger ele dá esse aq:


ORA-00060: deadlock detected *while* waiting *for* *resource*
ORA-06512: *at* "TESTE2.TRG_A", line 36
ORA-04088: error during execution *of* *trigger* 'TESTE2.TRG_A'
ORA-06512: *at* "TESTE2.TRG_a", line 6
ORA-04088: error during execution *of* *trigger* 'TESTE2.TRG_A'
ORA-06512: *at* "TESTE2.TRG_a", line 36
ORA-04088: error during execution *of* *trigger* 'TESTE2.TRG_A'

2010/3/23 Willian Fernando Frasson <wfras...@yahoo.com.br>

>
>
> Voltando aos grupo Oracle depois de alguns meses...
>
> Maria o que você pode fazer é o seguinte, não é muito usado no dia dia, mas
> pode-se criar uma outra tabela CONTROLE com os campos:
>
> TABELA, ROWID_ORIGINAL, OPERACAO, FILIAL
>
> Onde nessa tabela após ativar a 1ª trigger ela irá colocar a tabela, rowid
> e operacao na mesma.
>
> Cria-se uma trigger na tabela CONTROLE quando entrar uma determinada linha
> nela, faz a operação na outra tabela separando por filial.
>
> Qualquer dúvida estou a disposição.
>
>
> ----- Original Message -----
> From: Mária Cristina Silva
> To: oracle_br@yahoogrupos.com.br <oracle_br%40yahoogrupos.com.br>
> Sent: Tuesday, March 23, 2010 10:50 AM
> Subject: [oracle_br] erro de Mutante Table
>
> Moçada, gostaria de pedir um Help a todos...
> Sei que parece ser um erro comum, mas como estou apanhando, alguém pode ter
> alguma dica...
>
> Preciso fazer uma trigger, onde sua função é: Quando a tabela A sofre
> alteração em algumas colunas curjo são valores(money), ela deve disparar
> uma
> trigger onde a tabela a ser alterada é a propria tabela A, porém altera
> outras linhas de uma filial por exemplo.
>
> A abaixo a trigger...Já usei o *pragma* *autonomous_transaction,* Já criei
> tabela temporaria e tentei fazer outra trigger para tentar alterar..mas não
> consegui...Se alguém puder me dá uma dica...desde já agradeço.
>
> *
>
> Create* *Or* *Replace* *Trigger* trg_A
> *Before* *update* *Of* CUSTOCONT, CUSTOFIN, CUSTOREAL, CUSTOREP,
> CUSTOULTENT, VALORULTENT,
> CUSTOULTENTFIN, VLULTENTCONTSEMST, STBCR, BASEBCR,CODPROD *on* A
> *REFERENCING* *NEW* *AS* *NEW*
> *for* *each* *row*
> *Declare*
> *pragma* *autonomous_transaction*;
>
> *Begin*
>
> *begin*
> *Update* A
> *set* CUSTOCONT = :*new*.CUSTOCONT,
> CUSTOFIN = :*new*.CUSTOFIN,
> CUSTOREAL = :*new*.CUSTOREAL,
> CUSTOREP = :*new*.CUSTOREP,
> CUSTOULTENT = :*new*.CUSTOULTENT,
> VALORULTENT = :*new*.VALORULTENT,
> CUSTOULTENTFIN = :*new*.CUSTOULTENTFIN,
> VLULTENTCONTSEMST = :*new*.VLULTENTCONTSEMST,
> STBCR = :*new*.STBCR,
> BASEBCR = :*new*.BASEBCR
> *Where* CODFILIAL = 'G3'
> *And* CODPROD = CODPROD;
>
> *commit*;
>
> */*
>
> commit;
> dbms_output.put_line('alterou ');*/*
> */* exception
> When Others Then
> dbms_output.put_line('alterou as colunas:'||:old.CODPROD);*\*/*
>
> *End*;
> *End* A;
>
> --
> Abraços,
> Mária Cristina
> Cel: 031-8883-5543
> E-mail: mariancrist...@gmail.com <mariancristina%40gmail.com>
> MSN: mcristinasil...@hotmail.com <mcristinasilva3%40hotmail.com>
> --
> "O começo é a parte mais importante do trabalho."
> - Platão
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>



-- 
Abraços,
Mária Cristina
Cel: 031-8883-5543
E-mail: mariancrist...@gmail.com
MSN:   mcristinasil...@hotmail.com
-- 
"O começo é a parte mais importante do trabalho."
- Platão


[As partes desta mensagem que não continham texto foram removidas]



------------------------------------

--------------------------------------------------------------------------------------------------------------------------
>Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
>responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--------------------------------------------------------------------------------------------------------------------------
>Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » 
>Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: 
>http://www.oraclebr.com.br/  
------------------------------------------------------------------------------------------------------------------------
 Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
    oracle_br-unsubscr...@yahoogrupos.com.br

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html


Responder a