У меня есть база данных с пользовательским "dbo", у которого есть имя пользователя "domain\xzy". Как изменить его с "domain\xzy" на "domain\abc".
Sql Server 2005, как изменить имя входа в dbo
Ответ 1
Я понял это. В SQL Management Studio вы должны щелкнуть правой кнопкой мыши по базе данных → Свойства → Файлы → Владелец. Измените это поле на имя/учетную запись, которую вы хотите связать с именем пользователя "dbo" для этой базы данных. Имейте в виду, что имя пользователя/учетная запись, которую вы выбрали, уже должны быть настроены на сервере sql в разделе Безопасность → Логины
Ответ 2
Если вы пытаетесь переназначить логин для пользователя db, вы можете использовать sp_change_user_login
exec sp_change_user_login 'Update_One', 'user', 'login'
Ответ 3
Это вход в Windows, а не вход в SQL Server, поэтому вы не можете "изменить" имя входа, поскольку оно связано с учетной записью пользователя в Active Directory.
Создайте новый вход в систему (Windows), сопоставленный с новым пользователем Windows (и при необходимости удалите старый). Затем в разделе "Безопасность" > "Пользовательское сопоставление", разрешение на вход в соответствующую базу данных в качестве пользователя "dbo" (или назначение роли db_owner)
Ответ 4
PantomTypist дает хороший ответ с помощью GUI. Для достижения того же результата с TSQL вы можете использовать этот код:
USE [My_Database_Name]
GO
EXEC dbo.sp_changedbowner @loginame = N'domain\abc', @map = false
GO