這篇文章將為大家詳細講解有關MySQL中如何創(chuàng)建與使用視圖,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
創(chuàng)新互聯(lián)建站是一家專注于成都網(wǎng)站建設、做網(wǎng)站和成都西信服務器托管的網(wǎng)絡公司,有著豐富的建站經(jīng)驗和案例。
視圖是MySQL的一種虛擬表,實際的表我們可以看到每一行的數(shù)據(jù),而視圖是另一種形式的表,他可以將任何的查詢結果變成一種虛擬的表方便下一次進行查詢。
1.可重用
2.簡化復雜的SQL
3.使用表的組成部分而不是整個表
4.保護數(shù)據(jù),可以給用戶授予表的特定部分的訪問權限而不是整個表的訪問權限
例如如下兩張表,表中可以看出班級表和學生表兩個表關系是1對多的,外鍵在學生方
。
假如我現(xiàn)在要查詢班級為三國演義的所有學生應該怎么查詢?可能你想到了用內(nèi)連接Inner join 或者外連接的Left join或rigth join,然后查詢結果如下所示。
結果顯然意見是沒有錯誤的,張飛和關羽都被查詢出來了.但是你會發(fā)現(xiàn)這樣寫重用性太差了,如果我又要查詢水滸傳班那么又要編寫這么長的一條兩表連接SQL,而視圖的優(yōu)點就在于此可重用性,可以讓用戶少寫很多重復的SQL.接下來我們開始創(chuàng)建視圖并使用視圖來對比一下。
結果可以看出來視圖創(chuàng)建以后我們少寫了很多代碼,且重用性也很強,其實視圖就相當于給查詢的結果取了一個別名,且這個別名包含查詢的結果,我們下一次用的使用直接用別名就行了也就是視圖。
迄今為止所有試圖都是和SELECT語句使用的,然后視圖是否可以更新呢?得視情況而定.
通常,視圖是可更新的(即,可以對他們進行INSERT,UPDATE和DELETE)但是更新視圖將更新基表,因為視圖本身沒有數(shù)據(jù)如果對視圖進行增刪改實際上是對基表進行增刪改.
關于MySQL中如何創(chuàng)建與使用視圖就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
本文題目:MySQL中如何創(chuàng)建與使用視圖
網(wǎng)頁地址:
http://weahome.cn/article/iipjcj.html