报什么错?
select count(*) into num from wang_road
where (w_crossid=:new.CrossingID)
and (lanename=:new.LaneName);
if num>0 then
我认为是没有必要的
select count(*) into num from wang_road
where (w_crossid=:new.CrossingID)
and (lanename=:new.LaneName);
if num>0 then
我认为是没有必要的
去掉for each row
ORA-04082: NEW 或 OLD 引用不允许在表层触发器中
的错误??这个错误是什么意思?
where (w_crossid=:new.CrossingID)
and (lanename=:new.LaneName); 还有我认为select count(*) into num from wang_road
where (w_crossid=:new.CrossingID)
and (lanename=:new.LaneName);
if num>0 then
我认为是没有必要的。
其实写这个触发器的意义何在?
加上new as new 好使不。
UPDATE OF "GLIGHTTIME", "PDCD", "PERIODTIME", "PHASEINFO"
ON "ITS"."LANECONFIG"
FOR EACH ROW
begin
update wang_road
set pdcd=:new.pdcd ,
periodtime=:new.periodtime ,
glighttime=:new.glighttime,
PhaseInfo=:new.PhaseInf
where (w_crossid=:new.CrossingID) and (lanename=:new.LaneName);
end
;
这样也出现同样的错误
CREATE OR REPLACE TRIGGER ITS.LANECONFIGYANWUU AFTER
UPDATE OF GLIGHTTIME, PDCD, PERIODTIME, PHASEINFO
ON ITS.LANECONFIG
FOR EACH ROW
begin
update wang_road
set pdcd=:new.pdcd ,
periodtime=:new.periodtime ,
glighttime=:new.glighttime,
PhaseInfo=:new.PhaseInf
where (w_crossid=:new.CrossingID) and (lanename=:new.LaneName);
end
;
错误信息就是:在触发的时候出错,比如修改自动pdcd的时候,
错误提示:触发器"ITS"."LANECONFIGYANWUU" 无效且未通过重新确认