sql-server – SQL Server:dbo vs db_owner角色成员?

前端之家收集整理的这篇文章主要介绍了sql-server – SQL Server:dbo vs db_owner角色成员?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在向用户提供新的数据库.与作为db_owner角色成员的登录相比,作为默认dbo用户用户有何不同?

解决方法

每个数据库都应该有一个dbo用户,默认情况下会将其分配给db_owner数据库角色.还有一个dbo架构,它部分是sql Server 2000及更早版本的延续,其中用户和架构是同一个架构.它还有点特别之处在于,如果在用户的默认模式中找不到对象,则查询将在dbo模式中查找对象(假设对象名称未使用模式名称限定).

您只能将单个登录映射到数据库中的dbo用户(与任何数据库用户一样),但您可以根据需要为db_owner角色分配尽可能多的用户,从而使他们基本上完全控制数据库.

如果为数据库用户设置默认架构,则在安全性方面不会产生任何影响.它只是控制默认情况下哪个模式将用于在没有为对象名提供特定模式名称时创建和引用对象.在sql Server 2000及更早版本中,由于没有用户和模式的分离,除非另外明确指定,否则用户的默认模式始终是自身的,例如,“CREATE TABLE dbo.test_table …”vs“CREATE TABLE test_table …”. (请注意,dbo架构仍用于在用户的默认架构中找不到的对象.)

猜你在找的MsSQL相关文章