no caso criei um programa de estoque em java, so que na hora da venda
preciso dar uma baixa, só que nao quero puxar um select, do item ver a quantidade
diminuir, na aplicação depois alterar no banco etct…
eu tenho uma tabela Produto, com o field quantidade, e gostaria que essa quantidade
fosse decrementada ou encrementada, em valores qe eu especificar ja tentei onde
uma variavel recebia o select mas parece que nao acertei a sintaxe
DELIMITER $$
CREATE PROCEDURE venda_combaixa( IN idvenda int, idprod int, quant int )
BEGIN
DECLARE x INT DEFAULT 0;
INSERT INTO venda_has_produto VALUES (idvenda,idprod,quant); //aki eh outra coisa ignore-a
Select Quantidade + quant from Produto where idProduto=idprod INTO x; //isso ai queria saber como faz
update produto set Quantidade = x where produto.idProduto = idprod;
END
$$
Oue entao fazer um insert ja puxado de um select mas parece que nao deu certo porque ele nao pode referenciar a mesma tabela
pelo menos foi o erro que deu.
update produto set quantidade = (Select Quantidade +2 from Produto where idProduto=9) where idProduto=9;
da esse erro Error Code : 1093
You can’t specify target table ‘produto’ for update in FROM clause
dai nao consegui, alguem sabe de algum geito de eu dar baixa no estoque?
grato