lucasgn 0 Denunciar post Postado Setembro 30, 2012 Segue a questão: Faça uma trigger na tabela detalhepedido que, ao inserir ou alterar um detalhe, faça a correção dos valores de estoque na tabela produto. Que eu tenha pesquisado e que eu saiba so da pra fazer a trigger disparar com 1 evento... exemplo create trigger exnumero4 before insert on tb_detalhespedido for each row begin end Agradeço desde já. Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Setembro 30, 2012 ... insert or update on ... Compartilhar este post Link para o post Compartilhar em outros sites
lucasgn 0 Denunciar post Postado Setembro 30, 2012 ... insert or update on ... Tentei aqui no mysql mas nao roda: create trigger Numero4 before insert or before update on tb_detalhespedido for each row begin update tb_produto set unidadesemestoque = (unidadesemestoque-new.quantidade) where idproduto=new.produto_idproduto; end Pelo que parece é impossivel fazer tal implementação no Mysql como podem ver no link http://www.java2s.com/Tutorial/MySQL/0260__Trigger/Catalog0260__Trigger.htm Vou ter de mudar para o Sql Server antes do que pensei, podem me indicar um link para baixa-lo? meu sistema é windows 7 64 bits, agradeço desde ja. Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Setembro 30, 2012 Parece que é isto mesmo, uma restrição chata. Compartilhar este post Link para o post Compartilhar em outros sites
DiegoAngra07 21 Denunciar post Postado Outubro 1, 2012 Boa noite amigo, É isso mesmo uma restrição do MySQL. Sugestão: Crie uma Stored Procedure com o que precisa ser feito pela Trigger. Aí você chama esta Procedure de dentro das duas Triggers (BEFORE INSERT e BEFORE UPDATE). Sendo assim, se tu precisar dar manutenção nessa rotina algum dia, fará apenas na Procedure, ao invés de ter que fazer 2 vezes em cada Trigger. Apenas uma dica =] Abraço. Compartilhar este post Link para o post Compartilhar em outros sites
Prog 183 Denunciar post Postado Outubro 2, 2012 Pq simplesmente não cria duas triggers? A parada é academica, não esta buscando performance ou otimização de código. Será bem mais simples resolver. Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Outubro 2, 2012 Como o professor pede uma tarefa impossível fazer UMA trigger , será que ele não conhece a restrição do BD ?! Compartilhar este post Link para o post Compartilhar em outros sites
Prog 183 Denunciar post Postado Outubro 2, 2012 Como o professor pede uma tarefa impossível fazer UMA trigger , será que ele não conhece a restrição do BD ?! Pq? Os professores não podem se enganar? :P Mas essa é a minha interpretação da questão. Compartilhar este post Link para o post Compartilhar em outros sites
DiegoAngra07 21 Denunciar post Postado Outubro 2, 2012 Pois é, no fim das contas serão duas Triggers de qualquer jeito. A minha sugestão da Procedure é para que caso seja necessário alterar a rotina, não tenha que fazer 2 vezes. Eu sempre busquei adaptar as situações acadêmicas para o que seria melhor profissionalmente também. Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Outubro 2, 2012 Pq? Os professores não podem se enganar? :P Mas essa é a minha interpretação da questão. Tanto podem que se enganam ... Eu no lugar do mestre diria : "isto foi para forçar vocês a pesquisarem mais sobre a ferramenta" ... :) Compartilhar este post Link para o post Compartilhar em outros sites