【问题标题】:T-SQL How to grant role to userT-SQL如何向用户授予角色
【发布时间】:2012-06-13 04:55:05
【问题描述】:

创建角色并授予权限后,我想将指定角色的权限授予用户,如何处理?我尝试授予 ,但失败了。

【问题讨论】:

    标签: sql-server sql-server-2008 tsql


    【解决方案1】:

    由于 BOL 显示 sp_addrolemember 已被弃用,如果您使用的是 SQL Server 2012,您可能希望使用:

    ALTER ROLE <role_name> ADD MEMBER <user_name>
    

    【讨论】:

    • 有趣,好像是这种情况,那么您会期望 SSMS 支持生成此类脚本。它没有。
    • 另外值得注意的是,您可能需要在此之前执行CREATE USER [user_name] FOR LOGIN [user_name] WITH DEFAULT_SCHEMA=[dbo]。就我而言,我必须在它起作用之前这样做。
    【解决方案2】:
    EXEC sp_addrolemember 'db_owner', 'JohnJacobs'
    

    【讨论】:

    • 只是为了让未来的人们知道,MS 官方 documentation 现在指定此方法已被弃用,sp_addrolemember 将在未来的版本中消失。 ALTER ROLE 是现在推荐的方式,所以请改用@samp 回答。
    【解决方案3】:

    就我而言,我需要将用户添加到特定数据库的公共角色中。这样做是这样的:

    USE [<DB Name>]
    GO
    CREATE USER [<User Name>] FOR LOGIN [<User Name>]
    GO
    

    【讨论】:

      猜你喜欢
      • 2019-05-21
      • 2020-04-27
      • 2017-05-31
      • 2019-04-13
      • 1970-01-01
      • 2020-11-30
      • 2014-12-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多