我的触发器有问题。它返回“找不到数据”,我不知道如何解决它。你可以帮我吗 ?在触发器中找不到数据
create or replace
TRIGGER nb_action
AFTER INSERT ON Message
FOR EACH ROW
DECLARE
vAuteur integer;
PRAGMA AUTONOMOUS_TRANSACTION;
BEGIN
SELECT id_auteur INTO vAuteur FROM Message where id_message = :new.id_message;
UPDATE Utilisateur SET nb_action=nb_action+1 where id_utilisateur=vAuteur;
END ;
那里没有必要使用自治事务。而且这样做存在巨大的风险,因为即使当父事务回滚时以及Oracle由于写一致性而多次执行触发器时,自治事务将提交对“Utilisateur”表的更改。 –