Tentei criar um diagrama de banco de dados com o SQL Server 2008, mas ocorreu um erro:
Os objetos de suporte do diagrama do banco de dados não podem ser instalados porque esse banco de dados não possui um proprietário válido. Para continuar, primeiro use a página Arquivos da caixa de diálogo Propriedades do Banco de Dados ou a instrução ALTER AUTHORIZATION para definir o proprietário do banco de dados com um logon válido e adicione os objetos de suporte do diagrama do banco de dados.
Então eu tentei o seguinte:
EXEC sp_dbcmptlevel 'Ariha', '90';
GO
ALTER AUTHORIZATION ON DATABASE::Ariha TO [WIN-NDKPHUPPNFL\Administrator]
GO
USE Ariha
GO
EXECUTE AS USER = N'dbo' REVERT
GO
O próximo erro aparece:
Mensagem 15404, nível 16, estado 11, linha 1 Não foi possível obter informações sobre o grupo / usuário do Windows NT 'WIN-NDKPHUPPNFL \ Administrator', código de erro 0x534.
O problema é que o nome do PC foi alterado para "DevPC". Também mudei isso no script de atualização, mas ainda assim o mesmo erro 15404.
O que posso fazer para corrigir esse erro irritante?
alter authorization on database::[db_name] to [sa]
e 2) execute o mesmo comando novamente e substitua[sa]
pelo usuário que possuía o banco de dados imediatamente após a restauração.Respostas:
Você deve considerar a conta de autenticação SQL para a propriedade do banco de dados; então você não precisa se preocupar com contas indo e vindo, bancos de dados ou instâncias movendo-se para servidores diferentes e sua próxima alteração no nome do PC. Eu tenho vários sistemas onde usamos:
Ou, se você deseja alterar o proprietário para essa conta local de Administrador, deve ser:
Porque renomear a máquina
DevPC
eliminou a conta local que costumava ser nomeadaWIN-ND...\Administrator
e isso também invalidou o proprietário atual do banco de dados.Se
SELECT @@SERVERNAME;
não for preciso (deve-se dizerDevPC
), para garantir que a renomeação do servidor seja mantida no SQL Server, você também pode emitir o seguinte:fonte
sa
se você tiver a autenticação sql desativada?[sa]
e depois mudei de volta para o usuário que ele dizia que era antes e viola, sem mais erros. Não sei por que um banco de dados restauração não configurar adequadamente o proprietário banco de dados ...No SQL Server Management Studio, faça o seguinte:
depois de fazer isso, agora você poderá acessar os diagramas de banco de dados.
fonte
Funciona.
fonte
Digite "SA" em vez de "sa" na caixa de texto do proprietário. Isso funcionou para mim.
fonte
Eu tive o mesmo problema.
Eu queria ver meu diagrama, que criei no mesmo dia no trabalho, em casa. Mas não pude por causa dessa mensagem.
Eu descobri que o proprietário do banco de dados era o usuário do meu computador - como esperado. mas como o computador está no domínio da empresa e não estou conectado à rede da empresa, o banco de dados não pôde resolver o proprietário.
Então, o que eu fiz foi mudar o proprietário para um usuário local e funcionou !!
Espero que isso ajude alguém.
Você altera o usuário clicando com o botão direito do mouse no banco de dados, propriedades, arquivos, proprietário
fonte
Isso consertou para mim. Ele define o proprietário encontrado na seção 'arquivos' da janela de propriedades do banco de dados e é conforme o script do management studio.
De acordo com a documentação sp_changedbowner, isso foi preterido agora.
Baseado na resposta de Israel. A resposta de Aaron é a variação não obsoleta disso.
fonte
Selecione seu banco de dados - Clique com o Botão Direito - Selecionar Propriedades
Selecione ARQUIVO no lado esquerdo da página
Na caixa PROPRIETÁRIO, selecione o botão que possui três pontos (…)
Agora selecione user 'sa e clique em OK
fonte
Eu apenas experimentei isso. Eu tinha lido as sugestões nesta página, bem como as sugestões da Autoridade SQL (que é a mesma coisa) e nenhuma das opções acima funcionou.
No final, removi a conta e recriei (com o mesmo nome de usuário / senha). Assim, todos os problemas desapareceram.
Infelizmente, isso significa que eu não sei o que deu errado, então não posso compartilhar mais nada.
fonte
1.Clique com o botão direito do mouse no seu banco de dados, 2.Em seguida, selecione Propriedades. 3. Selecione a opção em níveis de compatibilidade, escolha sql 2008 [100] se estiver trabalhando com o Microsoft sql 2008.
4.Em seguida, selecione o arquivo e escreva (sa) na caixa de texto do proprietário
100% funciona para mim.
fonte
Uma maneira mais fácil de resolver esses problemas seria clicar com o botão direito do mouse no nome do seu banco de dados, escolher "Nova consulta", digite "exec sp_changedbowner 'sa'" e executar a consulta. Então você estará pronto para ir.
fonte
você deve entrar como administrador, clicar com o botão direito do mouse no microsofft sql server management studio e executar como admin
fonte
Só é necessário executá-lo no editor de consultas ALTER AUTHORIZATION ON DATABASE :: YourDatabase TO [domain \ account];
fonte
O problema real é que o proprietário padrão (dbo) não tem um logon mapeado para ele.Como tentei mapear o logon sa para o proprietário do banco de dados, recebi outro erro informando "Usuário, grupo ou função 'dbo' já existe ... ". No entanto, se você tentar esse código, ele realmente funcionará:
fonte
clique com o botão direito do mouse no seu banco de dados e selecione propriedades. selecione a opção em níveis de compatibilidade, escolha sql 2005 [90] em vez de 2008 se você estiver trabalhando com o Microsoft sql 2008. selecione o arquivo e escreva (sa) na caixa de texto do proprietário. provavelmente vai funcionar
fonte