我有一个触发器:之前,INSERT触发器获得 '太多行' 错误
create or replace trigger trig
before insert on sistem
for each row
declare
v_orta number;
begin
SELECT v_orta INTO :new.orta_qiymet
FROM sistem;
v_orta:=(:new.riyaziyyat+:new.fizika)/2;
insert into sistem(orta_qiymet)
values(v_orta);
end trig;
当我插入一行:
insert into sistem(riyaziyyat,fizika) values(4,4)
我得到一个错误:
为什么我得到那个错误?
是否有一个原因,你不能将错误复制到问题的文本?除非'sistem'只有一行 - 这只适用于你的第二次插入 - 选择将始终是错误的。你也要求一个变异的表错误。你为什么选择?无论如何你都不会使用选择的'v_orta'。为什么你再次插入同一张表?这将导致无限循环...也许你可以解释你实际上想要做什么? –