day05 MySQL數(shù)據(jù)庫視圖
創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)、弋江網(wǎng)絡(luò)推廣、重慶小程序開發(fā)、弋江網(wǎng)絡(luò)營銷、弋江企業(yè)策劃、弋江品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供弋江建站搭建服務(wù),24小時(shí)服務(wù)熱線:13518219792,官方網(wǎng)址:www.cdcxhl.com
一、視圖概述:
視圖是一個(gè)虛擬表,是從數(shù)據(jù)庫中一個(gè)或多個(gè)表中導(dǎo)出來的表,內(nèi)容是由查詢定義的。數(shù)據(jù)庫中只存在視圖的定義,而沒有相關(guān)的數(shù)據(jù),這些數(shù)據(jù)四存放在原來的表中。因此,視圖是依賴于原來的表中的數(shù)據(jù),表中數(shù)據(jù)改變,視圖中的數(shù)據(jù)也會(huì)改變。
視圖的作用:
1、具有簡單性、
2、具有安全性、
3、邏輯數(shù)據(jù)獨(dú)立性、
二、視圖:
1、創(chuàng)建視圖:
create view 視圖名 as select * from 表名;
注意事項(xiàng):
1、運(yùn)行創(chuàng)建視圖的語句需要用戶具有創(chuàng)建視圖(create view)的權(quán)限,如果加上了【orreplace】時(shí),還需要用戶具有刪除視圖的權(quán)限。
2、select語句不能夠包含from子句中的子查詢。
3、select語句不能引用系統(tǒng)或用戶變量。
4、select語句不能引用預(yù)處理語句參數(shù)。
5、在定義中引用的表或視圖必須存在。
6、在定義中不能引用temporary表和不能創(chuàng)建temporary視圖。
7、視圖中定義的表必須存在。
8、不能講觸發(fā)程序和視圖關(guān)聯(lián)在一起。
9、在定義視圖中允許使用order by,但是,如果從特定視圖進(jìn)行選擇,而該視圖使用了具有自己order by的語句,它將被忽略。
2、查看視圖結(jié)構(gòu)
describe 視圖名; 或者 desc 視圖名;
3、查看視圖數(shù)據(jù)
show table status like ‘視圖名’;
4、查看視圖的詳細(xì)定義
show table view 視圖名;
5、修改視圖
create or replace view 視圖名 as select 語句;
6、更新視圖
視圖的更新其實(shí)就是數(shù)據(jù)表的更新,更新視圖是指通過視圖來插入、更新、刪除表中的數(shù)據(jù)。因?yàn)橐晥D就是一個(gè)虛擬表,其中是沒有數(shù)據(jù)的。
update 表名 set 視圖字段1=‘某個(gè)值’,視圖字段2=‘某個(gè)值’where 條件;
7、刪除視圖
drop view if exists 視圖名 ; 譯:if exists:是判斷該視圖是否存在,如果存在就執(zhí)行刪除。沒有就不執(zhí)行
三、結(jié)束語
學(xué)到這兒視圖的相關(guān)知識就學(xué)完了。同時(shí)對MySQL數(shù)據(jù)庫的基礎(chǔ)知識也就學(xué)完了。接下來我們就要進(jìn)入到提升篇的學(xué)習(xí)。