Fórum Lock de Registro no DbExpress #330680
04/10/2006
0
Olá pessoal estou com um problema ja algum tempo, e pelo o que estou vendo é uma falha devido a falta de informação e solução na internet.
Eu preciso travar o registro que esta sendo editado no banco de dados firebird. Travar é fácil eu uso no select where for with look, pronto o registro fica travado até que eu de um rollback ou commit, só que se outra pessoa na rede tentar editar o registro a aplicação fica travada devido o fato do dbexpress por default colocar a transação no modo WAIT, que é para aguardar mesmo.
Só que eu preciso que seja retornado imediatamente um erro para que eu trate esta situação, e é ai que entra o problema eu sei que a solução é eu mudar de WAIT PARA NOWAIT, só que onde muda isso, essa é a questão.
Ja o componente do IB tem essa opção no componente transaction.
Essa é uma dúvida que não quer calar.
Se alguem puder me ajudar ficaria muito agradecido
Eu preciso travar o registro que esta sendo editado no banco de dados firebird. Travar é fácil eu uso no select where for with look, pronto o registro fica travado até que eu de um rollback ou commit, só que se outra pessoa na rede tentar editar o registro a aplicação fica travada devido o fato do dbexpress por default colocar a transação no modo WAIT, que é para aguardar mesmo.
Só que eu preciso que seja retornado imediatamente um erro para que eu trate esta situação, e é ai que entra o problema eu sei que a solução é eu mudar de WAIT PARA NOWAIT, só que onde muda isso, essa é a questão.
Ja o componente do IB tem essa opção no componente transaction.
Essa é uma dúvida que não quer calar.
Se alguem puder me ajudar ficaria muito agradecido
Hllsilveira
Curtir tópico
+ 0
Responder
Posts
04/10/2006
Edineidaniel
Olá HllSilveira,
Bom na verdade eu não sei porque vc quer travar esse registro na tabela, uma vez que com isso ningm mais poderá rodar um SQL para ver este registro enquanto o mesmo não for liberado...!!!
Particular mente eu naum faria isso... Acho q vc deve tah pensando em garantir q se um pessoa na rede estiver alterando o registro e esse registro naum possa ser alterado por mais ningm na rede, enqnto o registro naum for liberado.....
Se for isso... guarde qm foi a ultima pessoal q alterou o registro...
Ou melhor pq, vc qr fazer isso?
Att,
Edinei
Bom na verdade eu não sei porque vc quer travar esse registro na tabela, uma vez que com isso ningm mais poderá rodar um SQL para ver este registro enquanto o mesmo não for liberado...!!!
Particular mente eu naum faria isso... Acho q vc deve tah pensando em garantir q se um pessoa na rede estiver alterando o registro e esse registro naum possa ser alterado por mais ningm na rede, enqnto o registro naum for liberado.....
Se for isso... guarde qm foi a ultima pessoal q alterou o registro...
Ou melhor pq, vc qr fazer isso?
Att,
Edinei
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)