CREATE MATERIALIZED VIEW LOG介紹
語法說明
- 建立實體化檢視日誌,須進行實體化檢視高速復新就必須建立實體化檢視日誌
- 實體化檢視日誌物件稱為MLOG$_table_name的表格,來源表格資料更新時,變更資訊會存放此表格,高速復新時,以變更資訊為來源,實體化檢視只會反映出變更差異
格式
CREATE MATERIALIZED VIEW LOG ON [schema.]table_name
[WITH with_clause] [{INCLUDING | EXCLUDING} NEW VALUES];
schema : 結構名稱
table_name : 物件名稱
with_clause : 指定要描述的資訊
with_clause子句說明
- WITH子句可在實體化檢視日誌指定要描述資訊,可指定項目包括物件ID,主鍵,ROWID,
序列,表格欄位等,省略WITH子句,預設描述主鍵
with_clause格式
{OBJECT ID | PRIMARY KEY | ROWID | SEQUENCE | (column [,column...])
[,OBJECT ID | PRIMARY KEY | ROWID | SEQUENCE | (column [,column...]) ... ] }
column : 對於更新全列指定要記錄在實體化檢視日誌的欄位
OBJECT ID : 記錄對於更新全列的物件識別符,建立物件表格日誌時可以指定
PRIMARY KEY : 記錄更新全列主鍵
ROWID : 記錄更新全列ROWID
SEQUENCE : 紀錄表示附加序列資訊的序列值,進行高速復新時,必須要在實體化檢視日誌裡記錄此值
NEW VALUES子句說明
- NEW VALUES子句可指定更新前後的資訊處理方法
- NEW VALUES子句指定值
- INCLUDING : 記錄更新前後資訊,此為預設值
- EXCLUDING : 只記錄更新前的資訊
語法示範
說明 : 建立實體化檢視日誌
create materialized view log on emp;
說明 : 建立實體化檢視日誌,加入描述
create materialized view log on emp
with sequence,rowid(ename,salary)
including new values;