sys.sp_grantdbaccess (Transact-SQL)

Aplica-se:SQL Server

Adiciona um usuário ao banco de dados atual.

Importante

Esse recurso será removido em uma versão futura do SQL Server. Evite usar esse recurso em desenvolvimentos novos e planeje modificar os aplicativos que atualmente o utilizam. Use CREATE USER em seu lugar.

Convenções de sintaxe de Transact-SQL

Sintaxe

sys.sp_grantdbaccess
    [ @loginame = ] N'loginame'
    [ , [ @name_in_db = ] N'name_in_db' OUTPUT ]
[ ; ]

Argumentos

@loginame [ = ] N'loginame'

O nome do grupo do Windows, logon do Windows ou logon do SQL Server a ser mapeado para o novo usuário do banco de dados. @loginame é sysname, sem padrão. Os nomes de grupos do Windows e logons do Windows devem ser qualificados com um nome de domínio do Windows no formato <domain>\<login>; por exemplo, LONDON\Joeb. O logon ainda não pode ser mapeado para um usuário no banco de dados.

@name_in_db [ = ] SAÍDA N'name_in_db'

O nome do novo usuário do banco de dados. @name_in_db é um OUTPUT parâmetro do tipo sysname. Se não for especificado, @loginame é usado. Se especificado como uma OUTPUT variável com valor de NULL, @name_in_db é definido como @loginame. @name_in_db ainda não deve existir no banco de dados atual.

Valores do código de retorno

0 (sucesso) ou 1 (falha).

Comentários

sp_grantdbaccess calls CREATE USER, que oferece suporte a opções extras. Para informações sobre como criar usuários de banco de dados, veja CREATE USER. Para remover um usuário de banco de dados de um banco de dados, use DROP USER.

sp_grantdbaccess não pode ser executado em uma transação definida pelo usuário.

Permissões

Requer associação na função de banco de dados fixa db_owner ou na função de banco de dados fixa db_accessadmin .

Exemplos

O exemplo a seguir usa CREATE USER para adicionar um usuário de banco de dados para a conta Edmonds\LolanSo do Windows ao banco de dados atual, que é o método preferencial para criar um usuário de banco de dados. O novo usuário chama-se Lolan.

CREATE USER Lolan FOR LOGIN [Edmonds\LolanSo];
GO