這篇文章給大家分享的是有關(guān)MYSQL中視圖怎么用的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過(guò)來(lái)看看吧。
視圖是數(shù)據(jù)庫(kù)中由真實(shí)的數(shù)據(jù)表查詢(xún)語(yǔ)句定義而成的一種虛擬表,視圖本身不存儲(chǔ)數(shù)據(jù)只是存儲(chǔ)查詢(xún)數(shù)據(jù)的定義。
視圖的優(yōu)點(diǎn)是什么
首先申明一點(diǎn),視圖本身的查詢(xún)和直接作為定義的sql聯(lián)表查詢(xún)的效率事實(shí)上沒(méi)有什么區(qū)別。所以不要指望使用視圖,能給你提升多大的效率。
可以看得見(jiàn)的優(yōu)點(diǎn)暫時(shí)只找到了三點(diǎn)
(1).比如你程序發(fā)送查詢(xún)語(yǔ)句給數(shù)據(jù)庫(kù)服務(wù)器的時(shí)候,用視圖傳輸?shù)恼Z(yǔ)句字節(jié)數(shù)更少
(2).程序上的代碼寫(xiě)的更少了,更容易讀懂視圖查詢(xún)所需要的字段,不必考慮多表查詢(xún)的細(xì)節(jié)
(3).多表更新字段或減少冗余時(shí),你不必修改程序,只需要更新視圖即可
真正能改善查詢(xún)效率的是合理規(guī)劃表結(jié)構(gòu),和建立適當(dāng)?shù)牟樵?xún)索引,有興趣了解可以看看這篇查詢(xún)優(yōu)化
視圖的使用
[1]創(chuàng)建視圖
createviewview_nameas你復(fù)雜的查詢(xún)語(yǔ)句;
擴(kuò)展:我們可以使用指定的算法來(lái)創(chuàng)建視圖
createALGORITHM=TEMPTABLEviewview_nameas你復(fù)雜的查詢(xún)語(yǔ)句;
createALGORITHM=MERGEviewview_nameas你復(fù)雜的查詢(xún)語(yǔ)句;
TEMPTABLE臨時(shí)表模式只能查詢(xún)不能更新
MERGE合并替換模式在更新視圖中的數(shù)據(jù)時(shí),會(huì)同時(shí)更新真實(shí)表中的數(shù)據(jù)(不指定系統(tǒng)會(huì)默認(rèn)使用)
[2]刪除視圖
dropviewview_name;
使用視圖的小案例
在案例中學(xué)習(xí)代碼永遠(yuǎn)都是最快的。
復(fù)制代碼
#users表的創(chuàng)建
CREATETABLE`users`(
`u_id`int(4)NOTNULLauto_increment,
`username`varchar(20)defaultNULL,
`age`int(4)defaultNULL,
`country`varchar(20)defaultNULL,
PRIMARYKEY(`u_id`)
)ENGINE=InnoDBAUTO_INCREMENT=6DEFAULTCHARSET=utf8;
#course表的創(chuàng)建
CREATETABLE`course`(
`c_id`int(4)NOTNULLauto_increment,
`coursename`varchar(20)defaultNULL,
`description`varchar(255)defaultNULL,
PRIMARYKEY(`c_id`)
)ENGINE=InnoDBAUTO_INCREMENT=5DEFAULTCHARSET=utf8;
感謝各位的閱讀!關(guān)于“MYSQL中視圖怎么用”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!
分享文章:MYSQL中視圖怎么用-創(chuàng)新互聯(lián)
URL地址:http://www.rwnh.cn/article18/jdodp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)、域名注冊(cè)、靜態(tài)網(wǎng)站、網(wǎng)站排名、響應(yīng)式網(wǎng)站、Google
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容