Leonardo.
Manda a trigger do jeito q esta construida hj fazendo favor.
Abraço
Alvaro



Em 24/09/08, Leonardo Souza <[EMAIL PROTECTED]> escreveu:
>
>   Bom dia srs,
>
> Estou construindo uma trigger na qual antes de atualizar/deletar um
> registro, tenho que dar um select na própria tabela que está sendo
> modificada, devido a executar joins em outras tabelas.
>
> Minha dúvida é:
>
> Como não posso executar uma instrução que necessito na tabela que está
> sendo
> alterada (ver erro abaixo), onde posso "armazenar" o registro em questão
> numa estrutura na qual possa dar joins em outras tabelas existentes???
>
> Se eu colocar em um tipo de collection, posso fazer isto: ???
>
> select
> t1.a,
> t1.b,
> t1.c,
> type_collection.a,
> type_collection.b
> from
> t1
> inner join type_collection ....
>
> ERRO:
> ----------------------------------------------------------
>
> UPDATE WEB."CLIENTES" SET DAT_COMPRA = TO_DATE('21/02/08', 'DD/MM/RR')
> WHERE
> ROWID = 'AAAKVQAAQAABpu9AAN'
>
> One error saving changes to table WEB."CLIENTES":
> Row 1: ORA-04091: table WEB.CLIENTES is mutating, trigger/function may not
> see it
> ORA-06512: at "WEB.TRG_CLIENTES", line 58
> ORA-06512: at "WEB.TRG_CLIENTES", line 204
> ORA-04088: error during execution of trigger 'WEB.TRG_CLIENTES'
>
> ----------------------------------------------------------
>
> Att,
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> 
>


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

Responder a