国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > Oracle > 正文

Oracle數據庫中fast刷新會受到哪些限制

2024-08-29 13:52:26
字體:
來源:轉載
供稿:網友
這篇論壇文章(賽迪網技術社區)主要根據一個實際案例具體分析了fast刷新所受到的限制,詳細內容請大家參考下文:

刷新物化視圖出現的問題:

CREATE MATERIALIZED VIEW LOG ON users;

CREATE MATERIALIZED VIEW users REFRESH FAST START WITH SYSDATE NEXT trunc(SYSDATE + 1) WITH PRIMARY KEY AS SELECT * FROM users@test.com;

SQL> exec dbms_mview.refresh('USERS','FAST');

begin dbms_mview.refresh('USERS','FAST'); end;

ORA-12008: error in materialized view refresh path

ORA-01008: not all variables bound

ORA-02063: preceding line from CNCYY

ORA-06512: at "SYS.DBMS_SNAPSHOT", line 2254

ORA-06512: at "SYS.DBMS_SNAPSHOT", line 2460

ORA-06512: at "SYS.DBMS_SNAPSHOT", line 2429

ORA-06512: at line 1

但是以下部分并沒有問題:

SQL> EXEC DBMS_MVIEW.REFRESH('USERS', 'COMPLETE');

PL/SQL procedure successfully completed

經過仔細分析后發現,基表users里面有個字段的缺省值是sysdate的,所以不能fast刷新!

fast刷新的限制:

所有類型的快速刷新物化視圖都必須滿足的條件:

1.物化視圖不能包含對不重復表達式的引用,如SYSDATE和ROWNUM;

2.物化視圖不能包含對LONG和LONG RAW數據類型的引用。

只包含連接的物化視圖:

1.必須滿足所有快速刷新物化視圖都滿足的條件;

2.不能包括GROUP BY語句或聚集操作;

3.如果在WHERE語句中包含外連接,那么唯一約束必須存在于連接中內表的連接列上;

4.如果不包含外連接,那么WHERE語句沒有限制,如果包含外連接,那么WHERE語句中只能使用AND連接,并且只能使用“=”操作。

5.FROM語句列表中所有表的ROWID必須出現在SELECT語句的列表中。

6.FROM語句列表中的所有表必須建立基于ROWID類型的物化視圖日志。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 吉安县| 汾西县| 金坛市| 和政县| 岗巴县| 河源市| 呼伦贝尔市| 澄迈县| 北川| 繁昌县| 福建省| 施甸县| 昌图县| 灵寿县| 阿荣旗| 武清区| 湄潭县| 泰安市| 巴彦淖尔市| 岳西县| 天峻县| 济源市| 壶关县| 马尔康县| 嘉禾县| 鲁甸县| 宜宾县| 辽阳县| 翼城县| 郸城县| 都安| 阳城县| 贺兰县| 田林县| 临颍县| 池州市| 中山市| 青铜峡市| 滦南县| 股票| 黄梅县|