視圖是存儲在數(shù)據(jù)庫中的虛擬表,視圖中不保存數(shù)據(jù),內(nèi)部封裝了一條SELECT語句,數(shù)據(jù)來源于查詢的一個或多個基本表。視圖的結(jié)構(gòu)和基本表相同,也是由行和列構(gòu)成的二維表,也可以進(jìn)行增刪改查的操作。視圖中的數(shù)據(jù)依賴于基本表中的數(shù)據(jù),表中數(shù)據(jù)發(fā)生改變,顯示在視圖中的數(shù)據(jù)也會改變,同樣,在視圖中對數(shù)據(jù)執(zhí)行增刪改的操作,基本表中的數(shù)據(jù)也會同步更新。
視圖的作用
為了減少代碼的重寫,或增加代碼的重復(fù)利用。所以如果語句只需要用一次或一兩句,就沒有必要單獨(dú)寫視圖。
視圖的優(yōu)缺點(diǎn)
優(yōu)點(diǎn)
簡單:簡化SQL語句,快速提取數(shù)據(jù)。視圖可以將復(fù)雜的查詢語句進(jìn)行封裝,用戶使用時不需要關(guān)心表的結(jié)構(gòu)、連接關(guān)系、篩選條件、分組和排序等等,只需要對視圖進(jìn)行簡單的查詢。
安全:保護(hù)數(shù)據(jù),根據(jù)特定授權(quán)分配權(quán)限。創(chuàng)建視圖時,可以篩選掉一些不希望用戶看到的行和列,也可以給視圖設(shè)置訪問權(quán)限,讓不同級別的用戶看到不同的視圖,從而提高數(shù)據(jù)庫的數(shù)據(jù)安全性。
缺點(diǎn)
操作視圖會比直接操作基礎(chǔ)表要慢,所以我們盡量避免在大型表上創(chuàng)建視圖。
盡量不要創(chuàng)建嵌套視圖,就是在視圖中使用視圖。 這樣在查詢時,會多次重復(fù)訪問基礎(chǔ)表,帶來性能損耗。
在視圖中只返回所需的信息,盡量不要在視圖使用不需要訪問的表。
在大型表或者復(fù)雜定義的視圖,可以使用存儲過程代替。
頻繁使用的視圖,可以使用索引視圖來代替。
學(xué)習(xí)更多數(shù)據(jù)分析知識歡迎訪問 http://www.3lll3.cn/member.html?utm_source=weitao








暫無數(shù)據(jù)