mysql中的視圖語法:1、建立視圖,程式碼為【CREATE [OR REPLACE] [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}]】;2、修改視圖,程式碼為【ALTER [ALGORITHM 】 。
本教學操作環境:windows7系統、mysql8.0.22版,DELL G3電腦,此方法適用於所有品牌電腦。
相關免費學習推薦:mysql影片教學
mysql中的視圖語法:
檢視的概述:
檢視(View)是一種虛擬存在的表。視圖並不在資料庫中實際存在,行和列資料來自訂視圖的查詢中使用的表,並且是在使用視圖時動態產生的。通俗的講,視圖就是一條 SELECT語句執行後回傳的結果集。所以我們在建立視圖的時候,主要的工作就落在建立這條SQL查詢語句。
視圖相對於普通的表的優點主要包括以下幾項。
簡單:使用視圖的使用者完全不需要關心後面對應的表的結構、關聯條件和篩選條件,對使用者來說已經是過濾好的複合條件的結果集。
安全性:使用檢視的使用者只能存取他們被允許查詢的結果集,對錶的權限管理並不能限製到某個行某個列,但是透過檢視就可以簡單的實作。
資料獨立:一旦視圖的結構確定了,可以屏蔽表結構變更對使用者的影響,來源表增加列對視圖沒有影響:來源表修改列名,則可以透過修改視圖來解決,不會造成對訪客的影響。
視圖的語法
建立視圖
CREATE [OR REPLACE] [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}] VIEW view_name [(column_list)] AS select_statement [WITH [CASCADED | LOCAL] CHECK OPTION]
WITH [CASCADED | LOCAL] CHECK OPTION決定了是否允許更新數據使記錄不再滿足視圖的條件。
LOCAL : 只要滿足本視圖的條件就可以更新。
CASCADED : 必須滿足所有針對該視圖的所有視圖的條件才可以更新。 CASCADED為預設值。
建立檢視與查詢檢視:
#對檢視進行更新操作:
發現視圖更新了,查詢一下原始表:
發現原始表也被改變了,由此可見對視圖的修改會影響基本表,(視圖具體能不能更新還要看WITH [CASCADED | LOCAL] CHECK OPTION的設定),雖然視圖可以被更新,但是不建議更新,因為視圖就是用來簡化查詢的。
修改檢視語法:
ALTER [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}] VIEW view_name [(column_list)] AS select_statement [WITH [CASCADED | LOCAL] CHECK OPTION]
檢視檢視:
使用SHOW TABLES 指令的時候不僅顯示表格的名字,同時也會顯示檢視的名稱:
使用SHOW CREATE VIEW 視圖名稱這個指令可以查詢到建立檢視時執行的語句:
################################### ###刪除檢視:#########語法:###
DROP VIEW [IF EXISTS] view_name [, view_name] ...[RESTRICT | CASCADE]###刪除檢視:############
以上是mysql中的視圖語法是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!