sp_dropuser (Transact-SQL)
Remove um usuário de banco de dados do banco de dados atual. sp_dropuser é compatível com versões anteriores do SQL Server.
Importante |
---|
Esse recurso será removido em uma versão futura do Microsoft SQL Server. Evite usar esse recurso em desenvolvimentos novos e planeje modificar os aplicativos que atualmente o utilizam. Em vez disso, use DROP USER. |
Sintaxe
sp_dropuser [ @name_in_db = ] 'user'
Argumentos
- [ @name_in_db =] 'user'
É o nome do usuário a ser removido. user é sysname, sem nenhum padrão. user deve existir no banco de dados atual. Ao especificar um logon do Windows, use o nome pelo qual o banco de dados conhece o logon.
Valores de código de retorno
0 (êxito) ou 1 (falha)
Comentários
sp_dropuser executa sp_revokedbaccess para remover o usuário do banco de dados atual.
Use sp_helpuser para exibir uma lista dos nomes de usuário que podem ser removidos do banco de dados atual.
Quando um usuário de banco de dados é removido, qualquer alias para esse usuário também é removido. Se o usuário possuir um esquema vazio com o mesmo nome do usuário, o esquema será descartado. Se o usuário possuir qualquer outro item protegível no banco de dados, o usuário não será descartado. A propriedade dos objetos deve ser transferida primeiro a outro principal. Para obter mais informações, consulte ALTER AUTHORIZATION (Transact-SQL). A remoção do usuário de banco de dados remove automaticamente as permissões associadas ao usuário e remove o usuário de todas as funções de banco de dados das quais seja membro.
sp_dropuser não pode ser usado para remover os usuários INFORMATION_SCHEMA do proprietário do banco de dados (dbo) ou o usuário guest dos bancos de dados master ou tempdb. Nos bancos de dados que não são do sistema, EXEC sp_dropuser 'guest' revogará a permissão CONNECT do usuário guest. Mas o próprio usuário não será descartado.
sp_dropuser não pode ser executado em uma transação definida pelo usuário.
Permissões
Requer a permissão ALTER ANY USER no banco de dados.
Exemplos
O exemplo a seguir remove o usuário Albert do banco de dados atual.
EXEC sp_dropuser 'Albert';
GO