物化檢視 on commit

LDean發表於2011-12-28
系統中發現一個檢視查詢很慢,看了下scipt發現竟然是三個表做的笛卡兒積,找到開發,結果說就是要這樣做,查了下資料,發現是用來拼裝表名和查詢語句的,所以要把所有可能都涉及到才用到了笛卡兒積,但每次呼叫這張試圖太耗時了,決定修改成臨時表採用trigger的形式插入,但涉及到三張表,實在懶得考慮那麼多邏輯,改用物化檢視。
在物化檢視中,有on commit,作用就是隻要基表commit立刻重新整理,也算是可以實現資料一致。
如下:
CREATE Materialized VIEW a.test
refresh force on commit  AS
     SELECT * from a,b,c;

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25680865/viewspace-714063/,如需轉載,請註明出處,否則將追究法律責任。

相關文章