例1:大类目录删除
create trigger pd1_1_dele
BEFORE DELETE on pd1_1
FOR EACH ROW
Begin
//插入临时表t_pd1_1
insert into t_pd1_1
select d.dlbh,d.dlmc,'2',pd4.bmbh,getdate()
from deleted d,pd4
where pd4.bmsx<"3"
//删除商品中类表pd1_2中所有大类编号与此相等的所有记录。
delete pd1_2 from pd1_2,deleted
where pd1_2.dlbh=deleted.dlbh
end;
请问这个触发器对吗?oracle中的触发器支持insert into table select 字段1,字段2 from deleted 吗?请各位指教,谢谢!!

解决方案 »

  1.   

    insert into table select 字段1,字段2 from deleted 應該是可以的
      

  2.   

    Oracle中的是New 和Old,引用列为:old.filed
      

  3.   

    oracle中支持插入记录集create trigger pd1_1_dele
    BEFORE DELETE on pd1_1
    FOR EACH ROW
    Begin
    //插入临时表t_pd1_1
    /////////语句不对,不知你要表达什么意思?
    insert into t_pd1_1
    select d.dlbh,d.dlmc,'2',pd4.bmbh,getdate()
    from deleted d,pd4
    where pd4.bmsx<"3"     
    //删除商品中类表pd1_2中所有大类编号与此相等的所有记录。
    delete pd1_2 where dlbh = :old.dlbh
    end;