deadlock em update dentro da trigger

Firebird

28/05/2004

Pessoal,

Tenho um trigger que executa um update porem este nao esta sendo comitado provocando deadlock quando outro usuario tenta atualizar o mesmo registro.

Em Stored Procedures eu posso colocar um COMMIT WORK por exemplo mas em triggers nao. Ou nao sei como inserir.

PS.: Mesmo que o usuario que fez o primeiro update saia do sistema o segundo continua recebendo a mensagem de deadlock. Utilizo Delphi 6 e o erro ocorre quando dou um ApplyUpdates na TIBQuery


Lhs

Lhs

Curtidas 0

Respostas

Afarias

Afarias

28/05/2004

|Tenho um trigger que executa um update porem este nao esta sendo
|comitado provocando deadlock quando outro usuario tenta atualizar o
|mesmo registro.

execute um commit da transação (da operação q disparou a trigger) e -- dependendo do caso, configure as transações para WAIT


|Em Stored Procedures eu posso colocar um COMMIT WORK por exemplo
|mas em triggers nao. Ou nao sei como inserir.

Na verdade não! Vc não pode abrir, ´comitar´ ou efetuar rollback seja em triggers ou stored procedures.


|PS.: Mesmo que o usuario que fez o primeiro update saia do sistema o
|segundo continua recebendo a mensagem de deadlock. Utilizo Delphi 6 e
|o erro ocorre quando dou um ApplyUpdates na TIBQuery

Como disse antes, logo após o ApplyUpdates, sugiro q execute um Commit na transação da query.

no mais, acredito q o uso de CachedUpdates com IBX não é muito legal... acho q vc não deveria utilizar desta funcionalidade.


T+


GOSTEI 0
POSTAR