4 schema sql-server-2008 sql-server
当我尝试在 SQL Server Management Studio 中更改 dbo 的默认架构时,ALTER 失败并指出无法更改 dbo 帐户的架构。是否有任何技巧可以将“dbo”的 dbo 默认架构更改为“xxx”?
谢谢!
每个数据库都由一个服务器主体(又名登录)拥有。在该数据库中,拥有主体称为dbo
(aka * D *ata* B *ase * O *wner)。数据库主体(又名用户)失去其真实姓名。
例如,对于我拥有的数据库:
select [user].name as UserName -- Database specific
, [login].name as LoginName -- Server wide
from sys.databases d
join sys.database_principals as [user]
on [user].sid = d.owner_sid
join sys.server_principals as [login]
on [login].sid = d.owner_sid
Run Code Online (Sandbox Code Playgroud)
将打印“dbo”、“Andomar”。如果您将所有者更改为sa
:
exec sp_changedbowner 'sa'
Run Code Online (Sandbox Code Playgroud)
查询将返回“dbo”、“sa”。
您不能修改拥有数据库的用户的默认架构。它始终是dbo
具有默认架构名称的用户名dbo
。