Fórum Atualização em cascata #52272

16/08/2005

0

Tenho duas tabelas, uma é produto e a outra é grade, todas as duas tem o campo Quantidade, que usa o mesmo dominio.

O que eu quero:

QUando fazer um Update na tabela Grade, verificar se houve alteração na quantidade, caso houve, atualizar a tabela Produto.


Sistemald

Sistemald

Responder

Posts

16/08/2005

Afarias

Use uma Trigger AFTER UPDATE na tabela GRADE para atualizar (update) a tabela PRODUTO.

T+


Responder

Gostei + 0

16/08/2005

Sistemald

tubo ben, fiz aqui a sql, ainda não testei, mas me surgiu uma dúvida, olha só:

No sistema vou fazer um update na tabela Grade, com o seguinte código:

tablegrade.edit;
tablegradeQuantidade.value:=  tablegradeQuantidade.value + valorvendido;
tablegrade.post;


quando eu der o post será executado a Triger, e atualizará a outra tabela.

Minha dúvida é a seguinte:

Se eu der um commit ele salvará tudo?Tanto a tabela grade e a Produto(alterado pela Triger)?

Se eu der um Rollback ele descartará tudo?Tanto a tabela grade e a Produto(alterado pela Triger)?


Responder

Gostei + 0

16/08/2005

Afarias

|Se eu der um commit ele salvará tudo?Tanto a tabela grade e a Produto
|(alterado pela Triger)?

sim

|Se eu der um Rollback ele descartará tudo?Tanto a tabela grade e a
|Produto(alterado pela Triger)?

sim



T+


Responder

Gostei + 0

16/08/2005

Sistemald

beleza consegui, fazer, valeu pela dica.

SET TERM ^ ;


CREATE TRIGGER GRADE_BU_ATUALIZAPRODUTO FOR GRADE
ACTIVE BEFORE UPDATE POSITION 0
AS
begin
  UPDATE PRODUTO
  SET PRQUANTIDADE = PRQUANTIDADE + (new.grquantidade - old.grquantidade)
where PRCODIGO = old.grproduto_codigo;
end
^


SET TERM ; ^



Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar