sp_addrole (Transact-SQL)
Cria uma nova função de banco de dados no banco de dados atual.
Importante |
---|
sp_addrole é incluído para compatibilidade com versões anteriores do Microsoft SQL Server e talvez não tenha suporte em uma versão futura. Em vez disso, use CREATE ROLE. |
Convenções da sintaxe Transact-SQL
Sintaxe
sp_addrole [ @rolename = ] 'role' [ , [ @ownername = ] 'owner' ]
Argumentos
[ @rolename = ] 'role'
É o nome da nova função de banco de dados. role é sysname, sem padrão. role deve ser uma ID válida e não deve existir no banco de dados atual.[ @ownername =] 'owner'
É o proprietário da nova função de banco de dados. owner é sysname, com um padrão do usuário de execução atual. owner deve ser um usuário ou função do banco de dados atual.
Valores de código de retorno
0 (êxito) ou 1 (falha)
Comentários
Os nomes de funções de banco de dados do SQL Server podem ter de 1 a 128 caracteres, incluindo letras, símbolos e números. O nome das funções de banco de dados não podem: conter uma barra invertida (\), ser NULL ou uma cadeia de caracteres vazia ('').
Após adicionar uma função de banco de dados, use sp_addrolemember (Transact-SQL) para adicionar entidades à função. Quando as instruções GRANT, DENY ou REVOKE são usadas para aplicar permissões na função de banco de dados, os membros da função de banco de dados herdam essas permissões como se elas fossem aplicadas diretamente em suas contas.
Observação |
---|
Novas funções de servidor não podem ser criadas. As funções podem ser criadas somente no nível do banco de dados. |
sp_addrole não pode ser usado em uma transação definida pelo usuário.
Permissões
Requer a permissão CREATE ROLE no banco de dados. Se estiver criando um esquema, requer CREATE SCHEMA no banco de dados. Se owner for especificado como um usuário ou grupo, requer IMPERSONATE nesse usuário ou grupo. Se owner for especificado como uma função, requer a permissão ALTER nessa função ou em um membro dessa função. Se o proprietário for especificado como uma função de aplicativo, requer a permissão ALTER nessa função de aplicativo.
Exemplos
O exemplo a seguir adiciona uma nova função chamada Managers ao banco de dados atual.
EXEC sp_addrole 'Managers'
Consulte também
Referência
Procedimentos armazenados do sistema (Transact-SQL)