視圖
定義:本質就是一張虛擬表,從一個或多個表中結合查詢出來的結果集,作用和真實表一樣,可以使用SELECT 陳述句查詢資料,也可以使用INSERT,UPDATE,DELETE 來修改資料,
優點:1) 簡單化,資料所見即所得;2) 安全性,用戶只能查詢或修改他們所能見到得到的資料;3) 邏輯獨立性,可以屏蔽真實表結構變化帶來的影響
缺點:1) 性能相對較差,簡單的查詢也會變得稍顯復雜;2) 修改不方便,特別是復雜的聚合視圖基本無法修改
特別強調
- 查看存盤檔案,可以發現,視圖只有表結構檔案,沒有表資料檔案
- 視圖通常是用于查詢,盡量不要修改視圖中的資料
視圖創建示例
-- 1.創建視圖語法
-- 語法:create view view_name as sql陳述句;
create view v_user as select u.username,d.depname from user as u inner join dep d on u.pid = d.id;
-- 2.使用視圖
-- 查詢 語法:select * from 視圖名;
select * from v_user;
-- 3.洗掉視圖
-- 洗掉語法:drop view 視圖名;
drop view v_user;
思考:實際開發程序中,視圖的使用頻率高嗎?
在實際開發程序中,一般不會使用視圖,假設我們在專案中使用了大量的視圖,后期我們想要擴展某個功能的時候,這個功能恰巧又需要對視圖進行修改,那么首先需要在MySQL中將視圖修改,然后再去應用程式中修改對應的sql陳述句,這就涉及到跨部門溝通問題,
因此,MySQL中雖然有視圖這個功能,但我們通常不會經常使用,幾乎都是通過重新修改應用程式中的sql陳述句來擴展功能,
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/94426.html
標籤:MySQL
下一篇:mysql索引筆記
