我一直在試圖弄清爲什麼SQL Server有db_owner
架構和db_owner
角色?這很混亂。我一直在尋找答案,到目前爲止,這是我的理解:SQL Server角色,架構,用戶
- 所有表和對象(如約束等)屬於一個模式。
DBO
是默認模式。 - 用戶可能被授予編輯每個對象或模式的權限。模式權限將該權限擴展到該模式中的所有對象。所以你不必爲每個單獨的對象授予許可。
- 角色將權限組合在一起以方便使用。
如果任何這是不正確的讓我知道。但我認爲這麼好。現在我的問題是:
- 究竟是什麼
db_owner
架構如SQL Server Management Studio的「數據庫用戶」對話框中所示?並在同一個對話框中,將「默認模式」定義爲dbo
。爲什麼這兩個不一樣?如果默認情況下SQL Server使用dbo
來創建所有對象,那麼使用什麼是db_owner
? - 爲什麼用戶想擁有一個模式?您正在分配權限/角色。擁有
db_accessadmin
會給你什麼? - 您可以舉一個例子,說明何時在
db_owner
模式和db_accessadmin
模式下創建對象?換句話說,是否有人合法地使用這些模式?
同意。用同一個名字創建兩種不同的對象(一種模式和角色)是很荒謬的。 – LarryBud 2015-03-11 14:43:14