MYSQL 檢視

不該相遇在秋天發表於2018-10-24

一、檢視是什麼

檢視是一種虛擬存在的表。。。。 (囉裡囉嗦一大堆,幾乎所有的資料都是這麼定義的,就把他當成查詢快取就可以)

二、檢視有什麼用

檢視的作用就是快取資料,可以這麼理解,我把一條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;

 

 

四、個人分享

 

相關文章