国产探花免费观看_亚洲丰满少妇自慰呻吟_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類型的物化視圖日志。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 临洮县| 壤塘县| 南陵县| 平阴县| 托克托县| 海门市| 云阳县| 东明县| 讷河市| 远安县| 澄城县| 灵寿县| 乌拉特中旗| 赣榆县| 兰考县| 贵港市| 灵璧县| 邵阳县| 祥云县| 郯城县| 敖汉旗| 资阳市| 满城县| 贡觉县| 乌拉特中旗| 彩票| 涡阳县| 郸城县| 福贡县| 西吉县| 新乐市| 岳普湖县| 阿尔山市| 平阳县| 沧州市| 通许县| 桂林市| 和平区| 嵩明县| 彭水| 灵丘县|