[firebase-br] deadlock
Forrest®
fernando.bg em gmail.com
Ter Nov 25 10:15:55 -03 2008
Rodrigo wrote:
> boa tarde a todos.
>
> Estou tendo o seguinte problema.
>
> Criei uma procedure que atualiza o estoque, quando alguem insere um
> produto ativa a procedure e atualiza o estoque. Só q se alguem na
> rede tb tenta inserir o produto, da erro de deadlock mesmo que a
> procedure ja tenha sido executada pelo primeiro usuario a bastante
> tempo. Dae so fechando o sistema que esta com a procedure travada.
>
> Segue o codigo da procedure:
> CREATE PROCEDURE UPESTOQUEUN (
> CODIGO INTEGER,
> NUMVENDA INTEGER,
> ESTOQUE NUMERIC(10, 2),
> DATAVENDA DATE,
> GARANTIAVENDA VARCHAR(30) CHARACTER SET WIN1252,
> GARANTIAIVENDA INTEGER
> )
> AS
> BEGIN
> Update Produtos Set
> NumVenda=:NumVenda,Estoque=Estoque-(:Estoque),DataVenda=:DataVenda,Gar
> antiaVenda=:GarantiaVenda,GarantiaIVenda=:GarantiaIVenda where
> Codigo=:Codigo; END
> ;
>
> se alguem puder ajudar.
Rodrigo nesse caso não seria melhor uma trigger no lugar da procedure,
pois com a trigger você não precisaria se preocupar com a transação
fazendo assim o insert, update ou delete do produto e a trigger
atualizaria seu estoque.
T++++++++++++++
--
Mais detalhes sobre a lista de discussão lista