實際上,數據庫對象是由Schema架構組織的,而不是由用戶組織的。所謂Schema架構,指的是一個數據庫中包含很多對象的容器。架構可以理解為一個命名空間,用戶并不擁有數據庫對象,而架構擁有數據庫對象,用戶其實是通過架構來使用數據庫對象的。例如,當數據庫中存在很多數據表時,如何對其進行分類,就需要使用到Schema架構進行管理。例如,對于Auser登錄名來說,首先選定的數據庫中依次打開“安全性”、“用戶”項,在其右鍵菜單上點擊“新建用戶”項,在彈出窗口中的“用戶名”和“登錄名”欄中分別輸入“Auser”,為其映射一個用戶名。
在該數據庫選擇“安全性”、“架構”項,在其右鍵菜單上點擊“新建架構”項,在“架構名稱”欄中輸入“houqin”,在“結構所有者”欄中點擊“搜索”按鈕,導入Auser用戶名。點擊確定按鈕創建該架構名。在Alex用戶屬性窗口左側選擇“常規”項,在“默認架構”欄中將“dbo”修改為“houqin”,并為其授予創建表的權限。這樣,當使用Auser賬戶登錄后,在目標數據庫中創建數據表后,這些表就屬于“houqin”類別了。注意,如果以Windows賬戶身份連接到SQL Server服務器,當試圖刪除上述數據庫中的Auser賬戶時。會出現錯誤提示。只有將上述“houqin”架構的所有者修改為dbo后,才可以刪除Auser用戶名。但是,Auser創建的數據庫對象依然存在,因為其屬于架構,這就實現了用戶架構的分離操作。