Re: [firebase-br] Dúvida sobre transações

Fernando Reis Guimarães fernandobhz em gmail.com
Qua Out 11 19:32:47 -03 2006


olha posso estar falando besteira
mas para que serve
select ColunaQueVaiSerAtualizada from Tabela
for update.  ->  isso aqui não travaria o registro?




Em 11/10/06, Magno System <magno em speet.com.br> escreveu:
>
> Sem dúvida. Mas estou estendendo o problema de deadlock não só para o
> controle de estoque mas para qualquer situação onde um registro esteja
> sendo
> editado e outro usuário queira modificá-lo.
>
>
>
> ----- Original Message -----
> From: "Kléber Caneva" <kdcc em terra.com.br>
> To: "FireBase" <lista em firebase.com.br>
> Sent: Wednesday, October 11, 2006 12:42 PM
> Subject: Re: [firebase-br] Dúvida sobre transações
>
>
> >O ideal é que você ten ha uma tabela de movimentação de estoque. e a
> > atualização do estoque seja feito numa trigger dessa tabela.
> >
> > []´s
> >
> > Kléber Caneva
> >
> > ----- Original Message -----
> > From: "Renan Cruz de Almeida" <renan.aju em terra.com.br>
> > To: "FireBase" <lista em firebase.com.br>
> > Sent: Wednesday, October 11, 2006 11:59 AM
> > Subject: Re: [firebase-br] Dúvida sobre transações
> >
> >
> >
> > Penso que não vai dar deadlock, mas pode acontecer o seguinte, acaso o
> > sistema não tenha nenhum controle a mais, tomando como exemplo um
> > produto qualquer "X" :
> >
> > caixa A : abre transação;
> > caixa B : abre transação;
> >
> > caixa A : lê estoque X = 100;
> > caixa B : lê estoque X = 100;
> >
> > caixa A : faz estoque final X = 100-30 = 70;
> > caixa B : faz estoque final X = 100-40 = 60;
> >
> > OBS : na realidade o estoque final de X deverá ser 100-(30+40) = 30, ao
> > término das transações A e B.
> >
> > caixa A : finaliza a transação e atualiza estoque final X = 70;
> > caixa B : finaliza a transação e atualiza estoque final X = 60;
> >
> > Isso é uma anomalia de alteração, onde os SGBD's não têm como impedir,
> > pois a "defesa" contra isto reside nas regras do negócio que está sendo
> > modelado e na forma como o sistema é implementado.
> >
> > []'s
> > Renan
> >
> >>É o seguinte: Tenho um sistema de vendas que a cada venda abate o
> estoque.
> >>Qual a garantia que eu tenho (mesmo com transações pequenas e rápidas)
> se
> >>em dois caixas tentarem alterar o estoque de um mesmo produto ao mesmo
> >>tempo não vai dar deadlock. Uso Firebird + Zeos.
> >>______________________________________________
> >>FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> >>Para editar sua configuração na lista, use o endereço
> >>http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> >>Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> >>
> >>
> >>
> >>
> >
> >
> > ______________________________________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > Para editar sua configuração na lista, use o endereço
> > http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> >
> > E-mail classificado pelo Identificador de Spam Inteligente Terra.
> > Para alterar a categoria classificada, visite
> >
> http://mail.terra.com.br/protected_email/imail/imail.cgi?+_u=kdcc&_l=1,1160578827.462142.28121.sotovento.hst.terra.com.br,5036,Des15,Des15
> >
> > Esta mensagem foi verificada pelo E-mail Protegido Terra.
> > Scan engine: McAfee VirusScan / Atualizado em 10/10/2006 / Versão:
> > 4.4.00/4870
> > Proteja o seu e-mail Terra: http://mail.terra.com.br/
> >
> >
> >
> >
> >
> > ______________________________________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > Para editar sua configuração na lista, use o endereço
> > http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> >
> >
> > --
> > No virus found in this incoming message.
> > Checked by AVG Free Edition.
> > Version: 7.1.408 / Virus Database: 268.13.2/471 - Release Date:
> 10/10/2006
> >
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para editar sua configuração na lista, use o endereço
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



-- 
Atenciosamente;
Fernando.



Mais detalhes sobre a lista de discussão lista