檢視的優點與缺點在程式設計的時候必須先了解檢視的優缺點,這樣可以揚長避短,檢視具有如下的一些優點:● 簡單性。檢視不僅可以簡化使用者對資料的理解,也可以簡化他們的操作。那些被經常使用的查詢可以被定義為檢視,從而使使用者不必為以後的操作每次都指定全部的條件。● 安全性。透過檢視使用者只能查詢和修改他們所能見到的資料。資料庫中的其他資料則既看不見也取不到。資料庫授權命令可以使每個使用者對資料庫的檢索限制到特定的資料庫物件上,但不能授權到資料庫特定行和特定的列上。透過檢視,使用者可以被限制在資料的不同子集上。● 邏輯資料獨立性。檢視可以使應用程式和資料庫表在一定程度上獨立。如果沒有檢視,應用一定是建立在表上的。有了檢視之後,程式可以建立在檢視之上,從而程式與資料庫表被檢視分割開來。檢視也存在一些缺點,主要如下。● 效能:SQL Server必須把檢視的查詢轉化成對基本表的查詢,如果這個檢視是由一個複雜的多表查詢所定義,那麼,即使是檢視的一個簡單查詢,SQL Server也把它變成一個複雜的結合體,需要花費一定的時間。● 修改限制:當用戶試圖修改檢視的某些行時,SQL Server必須把它轉化為對基本表的某些行的修改。對於簡單檢視來說,這是很方便的,但是,對於比較複雜的檢視,可能是不可修改的。所以,在定義資料庫物件時,不能不加選擇地來定義檢視,應該權衡檢視的優點和缺點,合理地定義檢視。
檢視的優點與缺點在程式設計的時候必須先了解檢視的優缺點,這樣可以揚長避短,檢視具有如下的一些優點:● 簡單性。檢視不僅可以簡化使用者對資料的理解,也可以簡化他們的操作。那些被經常使用的查詢可以被定義為檢視,從而使使用者不必為以後的操作每次都指定全部的條件。● 安全性。透過檢視使用者只能查詢和修改他們所能見到的資料。資料庫中的其他資料則既看不見也取不到。資料庫授權命令可以使每個使用者對資料庫的檢索限制到特定的資料庫物件上,但不能授權到資料庫特定行和特定的列上。透過檢視,使用者可以被限制在資料的不同子集上。● 邏輯資料獨立性。檢視可以使應用程式和資料庫表在一定程度上獨立。如果沒有檢視,應用一定是建立在表上的。有了檢視之後,程式可以建立在檢視之上,從而程式與資料庫表被檢視分割開來。檢視也存在一些缺點,主要如下。● 效能:SQL Server必須把檢視的查詢轉化成對基本表的查詢,如果這個檢視是由一個複雜的多表查詢所定義,那麼,即使是檢視的一個簡單查詢,SQL Server也把它變成一個複雜的結合體,需要花費一定的時間。● 修改限制:當用戶試圖修改檢視的某些行時,SQL Server必須把它轉化為對基本表的某些行的修改。對於簡單檢視來說,這是很方便的,但是,對於比較複雜的檢視,可能是不可修改的。所以,在定義資料庫物件時,不能不加選擇地來定義檢視,應該權衡檢視的優點和缺點,合理地定義檢視。