[firebase-br] Ref. Concorrencia edição registro

Omar Haddad omarhaddadm em gmail.com
Qui Nov 27 12:04:34 -03 2008


Sandro, valeu mesmo..

Ajudou pacas.;

Abraço

2008/11/27 Sandro <oleber.itajai em gmail.com>

> Este exemplo é com  IBX, mas acho que serve como padrão.
>
> No seu caso, como o query so vai trazer um registro, naum precisa usar for
> update, use apenas with lock.
>
> "IMPORTANTE":
>
> Para dar o conflito de imediato, vc tem que configurar na sua transação
> como
> READ_COMMITTED e NOWAIT ( retorna o erro imediatamente, não aguarda a
> primeira transação fechar)
>
> Eu utilizo assim, com Delphi 7 e IBX
> try
>       dmficha.qficha.Close;
>       dmficha.qficha.params.clear;
>       dmficha.qficha.sql.clear;
>       dmficha.qficha.sql.add('select * from ficha where codi = :codi with
> lock');
>       dmficha.qficha.Params[0].AsInteger := ncodi;
>       dmficha.qficha.Open;
>   except  //   SE ALGEUM JA DEU SELECT WITH LOCK NO MESMO REGISTRO
>      Showmessage('Registro está sendo utilizado por outro usuário !');
>   end;
>
>
> Espero ter ajudado.
>
>
>
>
>
> ----- Original Message -----
> From: "Omar Haddad" <omarhaddadm em gmail.com>
> To: "FireBase" <lista em firebase.com.br>
> Sent: Thursday, November 27, 2008 9:04 AM
> Subject: [firebase-br] Ref. Concorrencia edição registro
>
>
> Salve Masters of Firebird,
>
> Gostaria de saber como é tratado a edição de um mesmo registro no Firebird,
> ou seja, se uma
> estação está com o registro sendo alterado e outra tenta editar o mesmo
> reigstro, o Firebird
> alerta ? Permite, e considera o que commitou por último ?
>
> Tem como evitar editar o mesmo registro ?
>
> PS: Estou usando o ZTable para incluir, alterar. Se usasse ZQuery, poderia
> usar with lock
> para travar o registro?
>
> Alguém tem um exemplo usando "with lock" ? Funciona 100%
>
> Abraços aos amigos e sucesso.
>
> Omar
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



Mais detalhes sobre a lista de discussão lista