mysql必知必會--學習筆記(15)-- 視圖

1、視圖的創建語句爲CREATE VIEW 視圖名稱 AS 接上 SELECT語句。

2、視圖的規則

 與表一樣,視圖必須唯一命名(不能給視圖取與別的視圖或表相
同的名字)。
 對於可以創建的視圖數目沒有限制。
 爲了創建視圖,必須具有足夠的訪問權限。這些限制通常由數據
庫管理人員授予。
 視圖可以嵌套,即可以利用從其他視圖中檢索數據的查詢來構造
一個視圖。
 ORDER BY 可以用在視圖中,但如果從該視圖檢索數據 SELECT 中也
含有 ORDER BY ,那麼該視圖中的 ORDER BY 將被覆蓋。
 視圖不能索引,也不能有關聯的觸發器或默認值。
 視圖可以和表一起使用。例如,編寫一條聯結表和視圖的 SELECT

語句。

3、視圖的創建。
 視圖用 CREATE VIEW 語句來創建。
 使用 SHOW CREATE VIEW viewname ;來查看創建視圖的語句。
 用 DROP 刪除視圖,其語法爲 DROP VIEW viewname;。
 更新視圖時,可以先用DROP再用CREATE,也可以直接用CREATE OR
REPLACE VIEW。如果要更新的視圖不存在,則第 2 條更新語句會創
建一個視圖;如果要更新的視圖存在,則第 2 條更新語句會替換原

有視圖

4、WHERE 子句與 WHERE 子句

     如果從視圖檢索數據時使用了一條WHERE 子句,則兩組子句(一組在視圖中,另一組是傳遞給視圖的)將自動組合。

5、更新視圖

更新一個視圖將更新其基表(可以回憶一下,視圖本身沒有數據)。如果你對視圖增加或刪除行,實際上是對其基表增加或刪除行。如果視圖定義中有以下操作,則不能進行視圖的更新:

 分組(使用 GROUP BY 和 HAVING );
 聯結;
 子查詢;
 並;
 聚集函數( Min() 、 Count() 、 Sum() 等);
 DISTINCT;

 導出(計算)列。

6、一般視圖是隻用於檢索數據的,不用於更新和刪除數據。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章