如何用oracle多表創(chuàng)建的視圖insert

字號(hào):


    單表創(chuàng)建的視圖是可以增、刪、改。多表創(chuàng)建的視圖是不能直接進(jìn)行視圖添加等更新。
    解決辦法:替代觸發(fā)器。說(shuō)道這,大家可能就都知道怎么做了。
    create or replace trigger 名稱
    Instead Of Insert or update or delete
    on 視圖
    for each row
    Declare
    begin
    If Inserting Then
    Insert Into 基本表1 (t11,t12) Values (:New.f1,:New.f2);
    Insert Into 基本表2 (t11,t22) Values (:New.f1,:New.f3);
    elsif Updating Then
    Update 基本表1 set t11=:New.f1,t12=:New.f2 where t11=:New.f1;
    Update 基本表2 set t11=:New.f1,t22=:New.f3 where t11=:New.f1;
    elsif Deleting then
    Delete from 基本表1 where t11=:Old.f1;
    Delete from 基本表2 where t11=:Old.f1;
    oracle多表視圖insert