[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