第八章:視圖

 

第八章:視圖
 
8.1.視圖概念:虛表;不存儲數據,數據字典只記錄視圖定義,視圖通過select定義。】
                            操作視圖還是操作的基表,所以慎重操作。
8.2.視圖的優點:
8.3.創建視圖:--首先要有創建權限哦grant create view to scott;
         8.3.1.
CREATE [OR REPLACE] [FORCE|NOFORCE] VIEW view_name
[(alias[, alias]...)]
AS subquery
[WITH CHECK OPTION [CONSTRAINT constraint]]
[WITH READ ONLY]
其中:
OR REPLACE:若所創建的試圖已經存在,ORACLE自動重建該視圖;
FORCE:不管基表是否存在ORACLE都會自動創建該視圖;
NOFORCE:只有基表都存在ORACLE纔會創建該視圖:
alias:爲視圖產生的列定義的別名;
subquery:一條完整的SELECT語句,可以在該語句中定義別名;
WITH CHECK OPTION:插入或修改的數據行必須滿足視圖定義的約束;
WITH READ ONLY:該視圖上不能進行任何DML操作。
         8.3.2.查詢數據字典中記錄的視圖的定義;
         Select viem_name,text
         From user_views;
8.4.使用視圖:
         8.4.1.WITH READ ONLY;
         8.4.2.WITH CHECK OPTION;
8.5.修改視圖:只有重新定義;
8.6.管理視圖:
         讀取數據字典,獲得該視圖的定義,查找到蓋視圖所引用的表;
         從數據字典中查詢當前用戶對於蓋視圖所引用的表的權限;
         執行定義該視圖的SQL語句,實現執行視圖查詢。
注意:如果複雜視圖包含分組函數、group by子句或者distinct關鍵字,就不能使用DML操作;包含表達式或者僞列ROWNUM也不能進行DML操作。
8.7.刪除視圖:drop view view_name;
8.8.物化視圖:
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章