기존 SQL Server 로그인을 동일한 이름의 기존 SQL Server 데이터베이스 사용자에 연결하는 방법


124

단일 데이터베이스 의 사용자 를 동일한 이름의 데이터베이스 서버에 대한 로그인 에 연결하는 SQL Server 명령이 있습니까?

예를 들면 :

데이터베이스 서버-기본 인스턴스
데이터베이스 : TestDB

서버 로그인
-TestUser TestDB의 기존 사용자-TestUser

TestUser로그인을 TestDB데이터베이스 의 사용자 로 만들려고 하면 "사용자, 그룹 또는 역할"이 이미 존재합니다.

누구든지 DB 사용자 를 서버 로그인 에 할당하는 쉬운 방법을 알고 있습니까?

답변:


229

새로운 방법 (SQL 2008 이후)을 사용하는 것입니다 ALTER 사용자를

ALTER USER OrphanUser WITH LOGIN = correctedLoginName;

이것은 SQL2008에 따라 새로운 것입니까?
jkelley 2010-06-29

2
SQL Server 2005부터. Gratzy의 링크는 실제로 이것을 참조합니다.
gbn 2010-06-29

방금 SQL Server 2012에서 사용했고 작동하는지 확인할 수 있습니다
Ubercoder

6

나는 그것이 sp_change_users_login. 꽤 오래되었지만 데이터베이스를 분리하고 다시 연결할 때 사용했습니다.


1
SQL 로그인이 Windows 사용자 로그인을 사용하여 생성 된 경우 sp_change_users_login이 작동하지 않습니다. 오늘이 문제를 만났고이 질문으로 이어졌습니다. msdn.microsoft.com/en-us/library/ms174378.aspx
Tom Miller

이 메서드는 ALTER USER
Liam

@liam 당신은 정말로 8 년 된이 답변에 반대표를 던지고 이미 사용되지 않는 정보를 포함하고있는 8 년된 허용 된 답변을 참조 했습니까?
Gratzy

2

나는 sp_change_users_login그 시나리오를 달성 하기 위해 절차를 사용 했다고 생각한다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.