У меня есть база данных отчетов, которую я восстанавливаю каждую ночь из резервной копии производственной базы данных.
При восстановлении мне нужно добавить пользователя в роль DBO
для этой базы данных.
Я думал, что это сработает:
use Restored_Prod
go
exec sp_addrolemember 'db_owner', 'chris'
go
Но я получаю следующую ошибку, поскольку этот пользователь не существует в базе данных Restored_Prod:
Msg 15410, Level 11, State 1, Procedure sp_addrolemember, Line 75
User or role 'chris' does not exist in this database.
Как мне добавить пользователя 'chris' в базу данных, чтобы иметь возможность выполнить команду sp_addrolemember
, чтобы сделать его DBO
этой базы данных?
Есть ли способ добавить права пользователю с помощью команды sp_addrolemember
из главной базы данных, где пользователь существует?
Принципы пользователей должны существовать в базе данных, прежде чем вы сможете предоставить им права доступа.
use Restored_Prod
GO
CREATE USER [chris] FROM LOGIN [chris];
exec sp_addrolemember 'db_owner', 'chris';
GO