5
데이터베이스에 DBUsers가 많이 있습니다. 우리는 데이터베이스에서 모든 사용자를 정리해야합니다. 제가 DB에서 사용자를 삭제하려고 할 때 다음 오류 때문에 실패데이터베이스 사용자가 스키마를 소유하고 있는지 확인하기위한 일반화 된 쿼리
메시지 15138, 수준 16, 상태 1, 줄 2 데이터베이스 보안 주체는 데이터베이스의 스키마 를 소유 및 될 수 없습니다 떨어졌다.
그래서 해결책을 찾았습니다. 즉 스키마의 소유권을 dbo
으로 변경했습니다. 이제 아래 스크립트를 사용하여 사용자를 삭제할 수 있습니다.
SELECT name FROM sys.schemas WHERE principal_id = USER_ID('myUser')
ALTER AUTHORIZATION ON SCHEMA::SchemaName TO dbo
GO
DROP USER myUser
그러나 일반 사용자 정의 스크립트를 생성해야하므로 여러 사용자를 삭제하려고합니다. 나는이 그들을 소유 한 사용자에 대해 당신에게 스키마의 전체 목록을 줄 것이다 SQL 서버 2008
당신은 당신이 사용중인 데이터베이스를 지정해야합니다. –