在本教學中,您將了解MySQL檢視,我們將解釋並演示MySQL如何實現檢視。
MySQL 5.x 版本之後支援資料庫檢視。 在MySQL中,檢視的幾乎特徵符合SQL:2003標準。 MySQL以兩種方式處理對檢視的查詢:
MySQL支援版本系統的檢視。每次檢視被更改或替換時,檢視的副本將在駐留在特定資料庫檔案夾的arc
(archive)檔案夾中備份。備份檔案的名稱為view_name.frm-00001
。如果再次更改檢視,MySQL將建立一個名為view_name.frm-00002
的新備份檔案。
MySQL允許基於其他檢視建立檢視。在檢視定義的SELECT語句中,可以參照另一個檢視。
不能在檢視上建立索引。當使用合併演算法的檢視查詢資料時,MySQL會使用底層表的索引。對於使用誘惑演算法的檢視,當您針對檢視查詢資料時,不會使用索引。
在MySQL 5.7.7之前版本,是不能在SELECT
語句的FROM
子句中使用子查詢來定義檢視的。
如果刪除或重新命名檢視所基於的表,則MySQL不會發出任何錯誤。但是,MySQL會使檢視無效。 可以使用CHECK TABLE
語句來檢查檢視是否有效。
一個簡單的檢視可以更新表中資料。基於具有連線,子查詢等的複雜SELECT語句建立的檢視無法更新。
MySQL不像:Oracle,PostgreSQL等其他資料庫系統那樣支援物理檢視,MySQL是不支援物理檢視的。