http://blog.csdn.net/zdygis/archive/2002/02/21/12882.aspx
?
? 視圖是原始數據庫數據的一種變換,是查看表中數據的另外一種
方式。可以將視圖看成是一個移動的窗口,通過它可以看到感興趣的
數據。
???? 視圖是從一個或多個實際表中獲得的,這些表的數據存放在數據
庫中。那些用于產生視圖的表叫做該視圖的基表。一個視圖也可以從
另一個視圖中產生。
???? 視圖的定義存在數據庫中,與此定義相關的數據并沒有再存一份
于數據庫中。通過視圖看到的數據存放在基表中。
???? 視圖看上去非常象數據庫的物理表,對它的操作同任何其它的表
一樣。當通過視圖修改數據時,實際上是在改變基表中的數據;相反
地,基表數據的改變也會自動反映在由基表產生的視圖中。由于邏輯
上的原因,有些視圖可以修改對應的基表,有些則不能(僅僅能查詢)。
?
二 ? 視圖的作用
????? *? 簡單性??吹降木褪切枰?。視圖不僅可以簡化用戶對數據的理
解,也可以簡化他們的操作。那些被經常使用的查詢可以被定義為視圖,
從而使得用戶不必為以后的操作每次指定全部的條件。
???? *? 安全性。通過視圖用戶只能查詢和修改他們所能見到的數據。數
據庫中的其它數據則既看不見也取不到。數據庫授權命令可以使每個用
戶對數據庫的檢索限制到特定的數據庫對象上,但不能授權到數據庫特
定行和特定的列上。通過視圖,用戶可以被限制在數據的不同子集上:
?????? 使用權限可被限制在基表的行的子集上。
?????? 使用權限可被限制在基表的列的子集上。 ??
?????? 使用權限可被限制在基表的行和列的子集上。 ??
?????? 使用權限可被限制在多個基表的連接所限定的行上。 ??
?????? 使用權限可被限制在基表中的數據的統計匯總上。
?????? 使用權限可被限制在另一視圖的一個子集上,或是一些視圖和基表
合并后的子集上。
????? *? 邏輯數據獨立性。視圖可幫助用戶屏蔽真實表結構變化帶來的影響。
?
三 ? 視圖的安全性
????? 視圖的安全性可以防止未授權用戶查看特定的行或列,是用戶只能
看到表中特定行的方法如下:
???? 1? 在表中增加一個標志用戶名的列;
???? 2? 建立視圖,是用戶只能看到標有自己用戶名的行;
???? 3? 把視圖授權給其他用戶。
?
四 ? 邏輯數據獨立性
? ?? 視圖可以使應用程序和數據庫表在一定程度上獨立。如果沒有視圖,
應用一定是建立在表上的。有了視圖之后,程序可以建立在視圖之上,
從而程序與數據庫表被視圖分割開來。視圖可以在以下幾個方面使程序
與數據獨立:
???? 1? 如果應用建立在數據庫表上,當數據庫表發生變化時,可以在表
上建立視圖,通過視圖屏蔽表的變化,從而應用程序可以不動。
???? 2? 如果應用建立在數據庫表上,當應用發生變化時,可以在表上建
立視圖,通過視圖屏蔽應用的變化,從而使數據庫表不動。
???? 3? 如果應用建立在視圖上,當數據庫表發生變化時,可以在表上修
改視圖,通過視圖屏蔽表的變化,從而應用程序可以不動。
???? 4? 如果應用建立在視圖上,當應用發生變化時,可以在表上修改視
圖,通過視圖屏蔽應用的變化,從而數據庫可以不動。 ?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
