多表創(chuàng)建的oracle視圖不能插入操作的解決
作者:佚名
多表創(chuàng)建的oracle視圖不能進(jìn)行插入等更新操作?不要緊,下文就教您一個(gè)處理該問(wèn)題的方法,希望對(duì)您能夠有所幫助。
oracle視圖可以由單表創(chuàng)建,也可以多表創(chuàng)建。單表創(chuàng)建的oracle視圖是可以增、刪、改。多表創(chuàng)建的視圖是不能直接進(jìn)行oracle視圖添加等更新。
解決辦法:替代觸發(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;
【編輯推薦】
責(zé)任編輯:段燃
來(lái)源:
互聯(lián)網(wǎng)