什么是數(shù)據(jù)庫(kù)視圖作用有哪些
什么是數(shù)據(jù)庫(kù)視圖作用有哪些
數(shù)據(jù)庫(kù)視圖即視圖所對(duì)應(yīng)的數(shù)據(jù)不進(jìn)行實(shí)際存儲(chǔ),數(shù)據(jù)庫(kù)中只存儲(chǔ)視圖的定義,外行對(duì)于數(shù)據(jù)庫(kù)視圖表示不理解。以下是由學(xué)習(xí)啦小編整理關(guān)于數(shù)據(jù)庫(kù)視圖的內(nèi)容,希望大家喜歡!
數(shù)據(jù)庫(kù)視圖的介紹
視圖是虛表,是從一個(gè)或幾個(gè)基本表(或視圖)中導(dǎo)出的表,在系統(tǒng)的數(shù)據(jù)字典中僅存放了視圖的定義,不存放視圖對(duì)應(yīng)的數(shù)據(jù)。
視圖是原始數(shù)據(jù)庫(kù)數(shù)據(jù)的一種變換,是查看表中數(shù)據(jù)的另外一種方式??梢詫⒁晥D看成是一個(gè)移動(dòng)的窗口,通過它可以看到感興趣的數(shù)據(jù)。、視圖是從一個(gè)或多個(gè)實(shí)際表中獲得的,這些表的數(shù)據(jù)存放在數(shù)據(jù)庫(kù)中。那些用于產(chǎn)生視圖的表叫做該視圖的基表。一個(gè)視圖也可以從另一個(gè)視圖中產(chǎn)生。
視圖的定義存在數(shù)據(jù)庫(kù)中,與此定義相關(guān)的數(shù)據(jù)并沒有再存一份于數(shù)據(jù)庫(kù)中。通過視圖看到的數(shù)據(jù)存放在基表中。
視圖看上去非常像數(shù)據(jù)庫(kù)的物理表,對(duì)它的操作同任何其它的表一樣。當(dāng)通過視圖修改數(shù)據(jù)時(shí),實(shí)際上是在改變基表中的數(shù)據(jù);相反地,基表數(shù)據(jù)的改變也會(huì)自動(dòng)反映在由基表產(chǎn)生的視圖中。由于邏輯上的原因,有些視圖可以修改對(duì)應(yīng)的基表,而有些則不能(僅僅能查詢)。
數(shù)據(jù)庫(kù)視圖的作用
簡(jiǎn)單性。看到的就是需要的。視圖不僅可以簡(jiǎn)化用戶對(duì)數(shù)據(jù)的理解,也可以簡(jiǎn)化他們的操作。那些被經(jīng)常使用的查詢可以被定義為視圖,從而使得用戶不必為以后的操作每次指定全部的條件。
安全性。通過視圖用戶只能查詢和修改他們所能見到的數(shù)據(jù)。數(shù)據(jù)庫(kù)中的其它數(shù)據(jù)則既看不見也取不到。數(shù)據(jù)庫(kù)授權(quán)命令可以使每個(gè)用戶對(duì)數(shù)據(jù)庫(kù)的檢索限制到特定的數(shù)據(jù)庫(kù)對(duì)象上,但不能授權(quán)到數(shù)據(jù)庫(kù)特定行和特定的列上。通過視圖,用戶可以被限制在數(shù)據(jù)的不同子集上:
使用權(quán)限可被限制在基表的行的子集上。
使用權(quán)限可被限制在基表的列的子集上。
使用權(quán)限可被限制在基表的行和列的子集上。
使用權(quán)限可被限制在多個(gè)基表的連接所限定的行上。
使用權(quán)限可被限制在基表中的數(shù)據(jù)的統(tǒng)計(jì)匯總上。
使用權(quán)限可被限制在另一視圖的一個(gè)子集上,或是一些視圖和基表合并后的子集上。
邏輯數(shù)據(jù)獨(dú)立性。視圖可幫助用戶屏蔽真實(shí)表結(jié)構(gòu)變化帶來的影響。
數(shù)據(jù)庫(kù)視圖的安全性
視圖的安全性可以防止未授權(quán)用戶查看特定的行或列,使用戶只能看到表中特定行的方法如下:
1、在表中增加一個(gè)標(biāo)志用戶名的列;
2、建立視圖,使用戶只能看到標(biāo)有自己用戶名的行;
3、把視圖授權(quán)給其他用戶。
數(shù)據(jù)庫(kù)視圖的獨(dú)立性
視圖可以使應(yīng)用程序和數(shù)據(jù)庫(kù)表在一定程度上獨(dú)立。如果沒有視圖,應(yīng)用一定是建立在表上的。有了視圖之后,程序可以建立在視圖之上,從而程序與數(shù)據(jù)庫(kù)表被視圖分割開來。視圖可以在以下幾個(gè)方面使程序與數(shù)據(jù)獨(dú)立:
1、如果應(yīng)用建立在數(shù)據(jù)庫(kù)表上,當(dāng)數(shù)據(jù)庫(kù)表發(fā)生變化時(shí),可以在表上建立視圖,通過視圖屏蔽表的變化,從而應(yīng)用程序可以不動(dòng)。
2、如果應(yīng)用建立在數(shù)據(jù)庫(kù)表上,當(dāng)應(yīng)用發(fā)生變化時(shí),可以在表上建立視圖,通過視圖屏蔽應(yīng)用的變化,從而使數(shù)據(jù)庫(kù)表不動(dòng)。
3、如果應(yīng)用建立在視圖上,當(dāng)數(shù)據(jù)庫(kù)表發(fā)生變化時(shí),可以在表上修改視圖,通過視圖屏蔽表的變化,從而應(yīng)用程序可以不動(dòng)。
4、如果應(yīng)用建立在視圖上,當(dāng)應(yīng)用發(fā)生變化時(shí),可以在表上修改視圖,通過視圖屏蔽應(yīng)用的變化,從而數(shù)據(jù)庫(kù)可以不動(dòng)。
猜你感興趣: