未遵守 SQL Server 2008 默认架构?

Joh*_*tie 9 security schema sql-server

我们只是将 SQL 2008 数据库复制到另一台服务器上,以进行测试。登录的典型用户使用特定模式中的某些对象。假设它是 userfoo和 schema bar

foo的默认架构bar在实例和数据库级别。但是,在foo登录时,如果bar不使用完全限定名称,则无法在架构中找到任何对象。

为什么默认架构在这里不起作用?

小智 13

在 SQL Server 上有 foo 用户sysadmin权限吗?因为如果这样做,那么任何 sysadmin 用户都将默认分配架构dbo,独立于特定数据库的用户属性中的设置。

因此,为了拥有默认架构,用户需要拥有数据库角色,如 db_owner、db_datawriter 等,而不是服务器角色 sysadmin。

告诉我,如果这不是你的情况。