문서를 영문으로 보려면 영문 확인란을 선택하세요. 마우스 포인터를 텍스트 위로 이동시켜 팝업 창에서 영문 텍스트를 표시할 수도 있습니다.
번역
영문

sp_changedbowner(Transact-SQL)

현재 데이터베이스의 소유자를 변경합니다.

중요 정보 중요

Microsoft SQL Server의 이후 버전에서는 이 기능이 제거됩니다. 새 개발 작업에서는 이 기능을 사용하지 않도록 하고, 현재 이 기능을 사용하는 응용 프로그램은 수정하십시오. 대신 ALTER AUTHORIZATION을 사용합니다.

항목 링크 아이콘 Transact-SQL 구문 표기 규칙

sp_changedbowner [ @loginame = ] 'login'
     [ , [ @map = ] remap_alias_flag ]

[ @loginame= ] 'login'

현재 데이터베이스의 새 소유자의 로그인 ID입니다. loginsysname이며 기본값은 없습니다. login은 이미 존재하고 있는 SQL Server 로그인 또는 Windows 사용자여야 합니다. login이 데이터베이스 내의 기존 사용자 보안 계정을 통해 데이터베이스에 이미 액세스할 수 있는 경우에는 현재 데이터베이스의 소유자가 될 수 없습니다. 이 문제를 방지하려면 먼저 현재 데이터베이스에서 사용자를 삭제해야 합니다.

[ @map= ] remap_alias_flag

SQL Server에서 로그인 별칭이 제거되었으므로 remap_alias_flag 매개 변수는 더 이상 사용되지 않습니다. remap_alias_flag 매개 변수를 사용하더라도 오류가 발생하지는 않지만 이를 사용하는 데 따른 특별한 결과도 없습니다.

0(성공) 또는 1(실패)

sp_changedbowner를 실행하면 새 소유자가 데이터베이스 내에서 dbo 사용자로 알려집니다. dbo는 기본적으로 데이터베이스에서 모든 작업을 수행할 수 있는 암시적 권한을 갖습니다.

master, model 또는 tempdb 시스템 데이터베이스의 소유자는 변경할 수 없습니다.

올바른 login 값 목록을 표시하려면 sp_helplogins 저장 프로시저를 실행합니다.

login 매개 변수만 사용하여 sp_changedbowner를 실행하면 데이터베이스 소유권이 login에게 넘어갑니다.

ALTER AUTHORIZATION 문을 사용하여 보안 개체의 소유자를 변경할 수 있습니다. 자세한 내용은 ALTER AUTHORIZATION(Transact-SQL)를 참조하십시오.

데이터베이스에 대한 TAKE OWNERSHIP 권한이 필요합니다. 새 소유자에 상응하는 사용자가 데이터베이스에 있으면 로그인에 대한 IMPERSONATE 권한이 필요하고, 그렇지 않으면 서버에 대한 CONTROL SERVER 권한이 필요합니다.

다음 예에서는 Albert 로그인을 현재 데이터베이스의 소유자로 만듭니다.

EXEC sp_changedbowner 'Albert'

커뮤니티 추가 항목

추가
표시: