2018/05/18 數據庫 視圖
阿新 • • 發佈:2018-05-18
color IE 業務 size 都是 自我 lec -s 直接
最近有點忙,都沒有時間來寫博客了。
不過這也是自我沈澱的一個過程。
什麽是視圖?
視圖並沒有想象的那麽復雜,簡單來說的話。
視圖就是把你寫的SQL保存起來,在使用視圖的時候等於使用了這麽個SQL。
為什麽要用視圖?
當業務足夠復雜的時候,多個表之間的數據關聯越來越緊密。當我們要找一條數據的時候往往要寫長的SQL。
而這些SQL往往都是可以重復使用的。
於是,當我們有了視圖之後,就通過視圖直接查詢即可。
視圖是虛擬表,本身不存儲數據,而是按照指定的方式進行查詢。
如何創建一個視圖?
CREATE VIEW 視圖名(列1,列2...) AS SELECT (列1,列2...) FROM ...;
這裏是向外暴露的字段 搜索的SQL
先舉一個簡單的例子,我建立一個 user 的視圖
CREATE VIEW v_user AS (SELECT * FROM user);
很簡單,對吧。
這裏查看一下你的表
mysql> show tables; +----------------------------------+ | test | +----------------------------------+ | user | | v_user | +----------------------------------+ 11rows in set (0.00 sec)
視圖就像一張表一樣存在。
如何使用視圖?
使用視圖和使用表完全一樣,只需要把視圖當成一張表就OK了。視圖是一張虛擬表。
就像使用表一樣,不過對於視圖來說,只推薦查找,雖然說也可以用與增刪改,但是視圖過於復雜的話有很大問題會出錯。
SELECT * FROM v_user; 查找所有人員信息 SELECT * FROM v_user whser id =1; 查找ID等於1人員信息
就像正常查找數據表一樣
2018/05/18 數據庫 視圖