一、檢視是什麼
檢視是一種虛擬存在的表。。。。 (囉裡囉嗦一大堆,幾乎所有的資料都是這麼定義的,就把他當成查詢快取就可以)
二、檢視有什麼用
檢視的作用就是快取資料,可以這麼理解,我把一條sql的查詢結果裝在了一個檢視裡,我下次再查的時候,就不用走sql了,直接取這個檢視裡就可以了,神奇的是我可以修改這個檢視裡的資料,就等於修改了原表資料。
它的優點有很多,什麼簡單、安全、簡化操作、資料獨立。。。。(再次省略一萬字),然並卵,我在工作中從來沒有見到過它。因此只做瞭解,練習跟著走一遍就可以收工了。
三、檢視基本操作
1.我查表
SHOW TABLES;
2.我準備做檢視的資料
SELECT r.* FROM tb_role r RIGHT JOIN tb_admin a ON a.id=r.create_id;
3.建立一個檢視
CREATE OR REPLACE VIEW view_name_1 AS SELECT r.* FROM tb_role r RIGHT JOIN tb_admin a ON a.id=r.create_id; -- 檢視更新有很多限制 比如說 帶常量的查詢 帶limit的查詢 帶聚合函式的查詢 子查詢 等等 實際使用中自測一下就行了
-- 檢視語法 CREATE VIEW 檢視名稱 AS sql -- CREATE 後面加 OR REPLACE 代表如果本檢視存在則覆蓋
-- sql必須是查詢類sql sql內容可以是查詢檢視 也就是說 mysql允許檢視巢狀
4.我再查表
SHOW TABLES;
5.我查檢視內容
SELECT * FROM view_name_1;
6.我修改檢視的內容
UPDATE view_name_1 SET STATUS=10 WHERE id=3;
7.查一下原資料
SELECT r.* FROM tb_role r RIGHT JOIN tb_admin a ON a.id=r.create_id;
此時發現原表中的資料也一併被更新了
8.刪除檢視
DROP VIEW view_name_1;
9.我再查表
SHOW TABLES;
四、個人分享