一.視圖是什麼
1.視圖是一條select語句執行後的傳回的結果集
2.視圖對實際表的引用,是一個虛表,并不存儲任何資料,實際表資料改變了,視圖也會改變
3.對視圖的更新,将會更新實際表
二.視圖的作用
1.友善操作,減少複雜語句
2.增強安全性
三.建立視圖
基本文法
create [or replace] [algorithm = {undefined | merge | temptable}] view [db_name.]view_name [(column_list)] as select_statement [with [cascaded | local] check option]
若給定了[or replace],則表示當已具有同名的視圖時,将覆寫原視圖
示例:
基本解釋:
algorithm=undefined:指定視圖的處理算法;
definer=`root`@`localhost`:指定視圖建立者;
sql security definer:指定視圖查詢資料時的安全驗證方式;
盡可能優化視圖查詢,否則性能受影響.對視圖的增删改,要注意,有可能會更改原表資料.
其實視圖就是mysql資料庫層面的join查詢.