Вы можете изменить владельца базы данных MSSQL Server через SQL Server Management Studio. Подключитесь к вашем инстансу, создайте новый запрос и выполните такой запрос Transact-SQL:
ALTER AUTHORIZATION ON DATABASE::[yourdbname] TO [DOMAIN\user]
GO
Это рекомендованный способ.
Или можно использовать встроенную процедуру changedbowner
USE [yourdbname]
GO
EXEC sp_changedbowner 'VMBLOG\Max'
GO
Этот метод считается устаревшим и в будущих версиях SQL Server будет удален (https://learn.microsoft.com/en-us/sql/relational-databases/system-stored-procedures/sp-changedbowner-transact-sql?view=sql-server-ver16 ):
Чтобы получить текущего владельца базы данных Microsoft SQL Server, выполните:
USE [master]
GO
SELECT db.name as [Database Name],sp.name [SQL Login Name] from sys.databases db left join sys.server_principals sp on db.owner_sid=sp.sid
where db.name='yourdbname'
Или можно вывести все базы данных и их владельцев:
SELECT [name], SUSER_SNAME(owner_sid)
FROM sys.databases
Также вы можете изменить владельца из графического интерфейса SSMS:
- Откройте свойства базы данных;
- Перейдите в раздел Files;
- Текущий владелец указан в поле Owner, чтобы изменить его нажмите кнопку с тремя точками и выберите новый аккаунт из раздела Logins.
Чтобы изменить владельца базы данных Microsoft SQL Server, выполните такой запрос Transact-SQL:
ALTER AUTHORIZATION ON DATABASE::[yourdbname] TO [DOMAIN\user]