trigger和物化檢視同步表
前段時間網友提到了關於同步資料表的做法,今天用trigger做了兩張資料表的同步,測試剛好透過。
先create 兩張測試表
Create table tongbu01
(id number primary key,
Name varchar2(10)
)
Create table tongbu02 as select * from tongbu01
新建一個dml的trigger來同步兩張表
這裡我們利用tongbu01上得trigger來同步tongbu02
create or replace trigger tongbu_trigger
after insert or update or delete
on tongbu01
for each row
begin
if inserting then
insert into tongbu02 values(:new.id,:new.name);
elsif updating then
update tongbu02 set id=:new.id,name=:new.name where id=:old.id and name=:old.name;
elsif deleting then
delete tongbu02 where id=:old.id and name=:old.name;
end if ;
end;
以後對tongbu01的所有dml操作都將觸發tongbu02的相應的dml操作,也就保證了兩個表的同步。
利用物化檢視:
物化檢視不同於普通的檢視,普通檢視是虛表不佔用實際的段,對普通檢視的查詢實際都轉換為檢視sql語句的查詢。
物化檢視是一種特殊的物理表,有on commit和on demand兩種,檢視,on commit僅僅在物化檢視需要被重新整理時才進行重新整理,以保證和基表資料的一致性;on commit是一旦基表有了commit事務提交,馬上進行重新整理保證和基表資料一致。
使用物化檢視的目的為了提高查詢效能,可以用於預先計算並儲存表連線或聚集等耗時較多的操作的結構。
首先建立一個在一個tongbu01表的物化檢視的日誌
Create materialized view log on tongbu01
Tablespace users
With rowid;
然後建立即表示tongbu01的物化檢視mv_tongbu
create materialized view mv_tongbu
refresh force on commit
as
select * from tongbu01
此後關於基表tongbu01的所有dml操作,一旦commit完畢都會把該基表的物化檢視保持同步,物化檢視和物化檢視日誌都是實際存在的段,查詢user_segments或者user_extents都可以得到段的資訊。
大概有十多天沒有更新blog了,這次偷懶偷得可利索了,這些天倒是好好的睡了幾個好覺,現在新買了一個華碩的本本,用起來還不錯,現在要好好利用了,不怕雙休沒網路了更新blog了!harder and harder!早日成為一個合格的dba。讓blog成為一種習慣!
[@more@]來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25362835/viewspace-1054972/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 物化檢視妙用__表同步使用物化檢視方法
- 【MVIEW】Oracle通過物化檢視同步表資料及簡介ViewOracle
- 物化檢視日誌表被DROP後建立物化檢視報錯
- Postgres使用trigger自動重新整理物化檢視
- 普通檢視和物化檢視的區別
- ogg 同步 物化檢視建立限制 Materialized ViewZedView
- 【物化檢視】幾種物化檢視日誌分析
- Oracle普通檢視和物化檢視的區別Oracle
- 建立遠端基表的物化檢視
- 10G開始Oracle區分物化檢視和表Oracle
- 【物化檢視】根據物化檢視日誌快速重新整理物化檢視的過程
- oracle物化檢視Oracle
- 物化檢視prebuilt和線上重定義UI
- 物化檢視詳解
- oracle 建立物化檢視Oracle
- Oracle 物化檢視建立Oracle
- materialized view (物化檢視)ZedView
- 物化檢視 on commitMIT
- DB2資料庫物化檢視:MQT物化查詢表的使用DB2資料庫MQQT
- Oracle如何根據物化檢視日誌快速重新整理物化檢視Oracle
- 物化檢視的快速重新整理測試與物化檢視日誌
- calcite物化檢視詳解
- Oracle物化檢視詳解Oracle
- ORACLE物化檢視測試Oracle
- Oracle 物化檢視案例分享Oracle
- 物化檢視梳理總結
- ZT 物化檢視詳解
- Oracle物化檢視語法Oracle
- ORACLE物化檢視入門Oracle
- 物化檢視-學習篇
- 刷物化檢視並行並行
- oracle物化檢視系列(二)Oracle
- oracle物化檢視系列(一)Oracle
- 物化檢視基礎概念、mview跨庫遷移表View
- 12c 物化檢視 - 理解完全重新整理的物化檢視工作原理
- 物化檢視匯出匯入可能導致物化檢視日誌的失效
- 物化檢視重新整理並非完全根據物化檢視日誌記錄
- Oracle 物化檢視1 - 單表聚合及其快速重新整理Oracle