推薦(免費):sql
視圖介紹
視圖(View)是一種虛擬存在的表,對于使用視圖的用戶來說基本上是透明的。視圖并不在數據庫中實際存在,行和列數據來自定義視圖的查詢中使用的表,并且是在使用視圖時動態生成的。
定義視圖
create view 視圖名稱 as select 語句
SELECT * FROM provinces; CREATE VIEW v_pro AS SELECT * FROM provinces; SELECT * FROM v_pro;
查看視圖
查看表的時候會把視圖表也列出來
show tables;
使用視圖
select * from v_pro;
刪除視圖
drop view 視圖名稱;
視圖的作用
- 簡單:提高了重用性,就像一個函數。
- 安全:提高了安全性能,可以針對不同的用戶,設定不同的視圖。
- 數據獨立:一旦視圖的結構確定了,可以屏蔽表結構變化對用戶的影響,源表增加列對視圖沒有影響;源表修改列名,則可以通過修改視圖來解決,不會造成對訪問者的影響
視圖的修改
有下列內容之一,視圖不能做修改
- select子句中包含distinct
- select字句中包含組函數
- select語句中包含group by子句
- selecy語句紅包含order by子句
- where子句中包含相關子查詢
- from字句中包含多個表
- 如果視圖中有計算列,則不能更新
- 如果基表中有某個具有非空約束的列未出現在視圖定義中,則不能做insert操作。
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END