ProgramingTip

SQL Server 데이터베이스의 소유자를 변경 한 비용은 무엇입니까?

bestdevel 2020. 12. 6. 21:50
반응형

SQL Server 데이터베이스의 소유자를 변경 한 비용은 무엇입니까?


실수로 데이터베이스 다이어그램 탭을 클릭하면 다음 오류 중 하나가 표시됩니다.

이 데이터베이스에 유효한 소유자가 없기 때문에 데이터베이스 다이어그램 지원 개체를 사용할 수 없습니다. 계속해서 먼저 데이터베이스 속성 대화 상자의 파일 페이지 또는 ALTER AUTHORIZATION 문을 사용하여 데이터베이스 소유자를 유효한 로그인으로 설정 한 다음 데이터베이스 다이어그램 지원 개체를 추가합니다.

--- 또는 ---

데이터베이스에 데이터베이스 다이어그램을 사용하는 데 필요한 지원 개체가 하나 이상 없습니다. 생성 하시겠습니까?

이 데이터베이스의 소유자를 'sa'로 변경하는 구문은 무엇입니까?


개체 소유자를 변경하려는 다음을 시도하십시오.

EXEC sp_changedbowner 'sa'

그러나 문제는 아닙니다. Da Vinci Tools 개체를 다이어그램을 보려면 (dt_로 시작하는 테이블과 프로세스가 표시됨).


데이터베이스 소유자를 변경 한 비용 :

ALTER AUTHORIZATION ON DATABASE::YourDatabaseName TO sa

sp_changedbownerMicrosoft가 SQL Server 2012 이후 "미래"버전에서 약속하겠다고 약속했지만 SQL Server 2014부터는 여전히 사용할 수 있습니다 .하지만 SQL Server 2014 BOL에서는 제거했습니다.


존재하지 않는 sp_help_diagram (?)과 같은 개체를 생성하는 메시지입니다.

이 db의 소유자와 관련이 없어야합니다.


다음은 모든 DBS에서 소유자를 변경하는 방법입니다 (시스템 제외).

EXEC sp_msforeachdb'
USE [?]
IF ''?'' <> ''master'' AND ''?'' <> ''model'' AND ''?'' <> ''msdb'' AND ''?'' <> ''tempdb''
BEGIN
 exec sp_changedbowner ''sa''
END
'

참고 URL : https://stackoverflow.com/questions/769459/how-do-i-change-the-owner-of-a-sql-server-database

반응형