日期:2014-05-17  浏览次数:20883 次

oracle 插入带条件的触发器的问题
我创建如下的触发器,希望在A表被插入数据时,同时也插入到B表,但插入到B表要检查这人成绩是否及格,

但用如下触发器我进行测试的时候,发现插入A表合格的数据后,B表依然没有被插入

请教下大家



Create Or Replace Trigger test
  Before  INSERT  ON T_A
  for each row
when (Old.CJ='合格')
  DECLARE
begin
     INSERT INTO T_B(ID,LSH,CJ) VALUES(:NEW.ID,:NEW.LSH,:NEW.CJ);
end test;

------最佳解决方案--------------------
Create Or Replace Trigger tests   
Before  INSERT  ON T_A   
for each row 
begin    
  if :NEW.CJ ='合格' then
  INSERT INTO T_B(ID,LSH,CJ) VALUES(:NEW.ID,:NEW.LSH,:NEW.CJ); 
  end if;
end tests;