mysql數據庫視圖(五)
阿新 • • 發佈:2018-10-02
sele span 存儲 單表查詢 簡單的 pre 例如 atom 插入
1、數據中的視圖
視圖是指計算機數據庫中的視圖,是一個虛擬表,其內容由查詢定義。同真實的表一樣,視圖包含一系列帶有名稱的列和行數據。但是,視圖並不在數據庫中以存儲的數據值集形式存在。行和列數據來自由定義視圖的查詢所引用的表,並且在引用視圖時動態生成。
2、視圖的由來
關系型數據庫中的數據是由一張一張的二維關系表所組成,簡單的單表查詢只需要遍歷一個表,而復雜的多表查詢需要將多個表連接起來進行查詢任務。對於復雜的查詢事件,每次查詢都需
要編寫MySQL代碼效率低下。為了解決這個問題,數據庫提供了視圖(view)功能。
3、mysql視圖相關操作
##創建視圖 create view 視圖名(列1,列2...) as select (列1,列2...) FROM table_name;
##修改視圖 create or replace view view_user as select school from demo;
##查看所有視圖 show tables;
通過show tables;
反饋得到所有的表和視圖;同樣的,我們可以通過模糊檢索的方式專門查看視圖,這個時候,視圖的命令統一采用v_視圖名的優勢就體現出來了。 例如:
show tables like ‘v%‘;
##查看視圖詳情 desc view_name;
4、視圖的運用
1、視圖是虛擬表,本身不存儲數據,而是按照指定的方式進行查詢; 2、使用視圖和使用表完全一樣,只需要把視圖當成一張表就OK了。視圖是一張虛擬表;3、表中數據變化後,在通過視圖檢索,得到的結果也同步發生了變化;視圖不是表,不保存數據,它只是一張虛擬表;
4、可以通過視圖插入數據,但是只能基於一個基礎表進行插入,不能跨表更新數據。
5、視圖使用的註意點
1、視圖不是表,不直接存儲數據,是一張虛擬的表;
2、一般情況下,在創建有條件限制的視圖時,加上“with check option”命令。
mysql數據庫視圖(五)