T-SQL如何向用户授予角色

tmj*_*tmj 39 t-sql sql-server sql-server-2008

在创建角色并为其授予权限后,我想向用户授予指定角色的权限,如何处理?我尝试过,但失败了.

sam*_*amp 62

由于BOL显示sp_addrolemember已被弃用,因此如果您使用的是SQL Server 2012,则可能需要使用:

ALTER ROLE <role_name> ADD MEMBER <user_name>
Run Code Online (Sandbox Code Playgroud)

  • 有趣的是,如果是这种情况,那么您会期望SSMS支持生成此类脚本.它没有. (2认同)
  • 还值得注意的是,您可能需要在此之前执行“CREATE USER [user_name] FOR LOGIN [user_name] WITH DEFAULT_SCHEMA=[dbo]”。就我而言,我必须在它起作用之前这样做。 (2认同)

Raa*_*aab 58

EXEC sp_addrolemember 'db_owner', 'JohnJacobs'
Run Code Online (Sandbox Code Playgroud)

  • 为了让未来的人们知道,MS官方[文档](https://msdn.microsoft.com/en-us/library/ms187750.aspx)现在指定这种方法被弃用,`sp_addrolemember`将从中消失未来版本.ALTER ROLE现在是推荐的方式,所以请改用@samp来代替. (6认同)