Oracle
 sql >> Base de données >  >> RDS >> Oracle

Erreur SQL - le déclencheur/la fonction peut ne pas le voir

Un déclencheur au niveau de l'instruction (c'est-à-dire sans FOR EACH ROW clause) mettra toujours à jour tous enregistrements dans la table Payments, je ne pense pas que ce soit nécessaire. Pour une mise à jour des produits associés uniquement, utilisez ce déclencheur :

create trigger PROD_TOTAL
after insert ON Products
for each row
begin
    update Payments
    set ProdTotal = :new.ProdPrice * :new.ProdQuantity
    WHERE PayProdId = :new.ProdId ;
end;