Pergunta

Eu estou tentando soltar um do papel no meu banco de dados SQL Server. Deixei todos os membros de papel e quando eu tentei largar papel eu tenho esta mensagem de erro:

Msg 15138, Level 16, State 1, Line 13
The database principal owns a schema in the database, and cannot be dropped.

Alguém sabe por quê? Eu verifiquei o esquema Propriedade e só tinha sinal de verificação em seu próprio nome.

Foi útil?

Solução

Você não pode deixar cair um principal banco de dados que possui um esquema. Você tem que transferir a propriedade de esquema para algum outro banco de dados principal ou deixar cair o esquema antes você pode soltar o principal banco de dados.

Outras dicas

15138 erro é devido ao usuário que você está tentando excluir possui um esquema.

Se você executar o abaixo consulta que você vai obter o esquema de propriedade do usuário.

USE DatabaseName; 
SELECT s.name
FROM sys.schemas s
WHERE s.principal_id = USER_ID('UserName');

Digamos que ele retorna 'db_denydatareader' esquema. Em seguida, você pode atribuir esse esquema de usuário padrão 'dbo' usando o abaixo consulta.

ALTER AUTHORIZATION ON SCHEMA::db_denydatareader TO dbo;
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top