【问题标题】:Can't add user to a role无法将用户添加到角色
【发布时间】:2014-06-09 09:29:14
【问题描述】:

我关注the MS guidelines,他们举了一个具体的例子如下。

ALTER ROLE Sales ADD MEMBER Barry;

但是,当我执行相应的操作时,我收到一个错误,告诉我“关键字'ADD'附近的语法不正确”和关键字ADD下的一行。当我将鼠标悬停在它上面时,我可以看到工具提示显示“期待与”。

据我所知,WITH 用于将用户添加到角色的其他替代。所以我的问题是双重的。

  1. 如何将用户添加到角色?
  2. 错误的工具提示是怎么回事?

Somewhere else on the internet,我已经看到通过调用存储过程将用户添加到角色中。这引出了一个问题,即 MSDN 链接在谈论什么 - 好像无法使用该脚本。欢迎就这些主题提出建议,因为我对 DB 的经验不足,感觉就像是冰上的驼鹿。

我的配置: Microsoft SQL Server 管理工作室 10.50.4000.0
Microsoft 数据访问组件 (MDAC) 6.1.7601.17514
微软 MSXML 3.0 4.0 5.0 6.0
Microsoft Internet Explorer 9.0.8112.16421
Microsoft .NET 框架 2.0.50727.5466
操作系统 6.1.7601

【问题讨论】:

    标签: sql sql-server sql-server-express


    【解决方案1】:

    您使用的是什么版本的 SQL?你的语法只能在 2012 年以后使用

    您应该执行 sp_addrolemember:

    EXEC sp_addrolemember 'Sales', 'Barry'
    

    【讨论】:

    • 请参阅有关版本的编辑。有人会认为我用来创建脚本的版本 与自身兼容... :)
    【解决方案2】:

    试试这个...

    EXECUTE sp_addrolemember 'Sales', 'Barry'
    

    【讨论】:

    • 当然可以,但是为什么 MS 会给出示例?他们的意思是什么?它们什么时候有用?当我编写已经存在的数据库脚本时,我得到了那个声明。结论是 MS 自己的脚本给出了错误的输出。还是我错过了什么?
    • 我想你在看 SQL Server 2014 语法,我不太了解其他方式,可能是因为它只是 Sql Server 中的新方法,但我总是使用这个系统存储过程更容易记住。跨度>
    • 请参阅有关版本的编辑。有人会认为我用来创建脚本的版本 与自身兼容... :)
    【解决方案3】:

    试试这个:EXEC sp_addrolemember N'Sales', N'Barry'

    【讨论】:

      猜你喜欢
      • 2017-05-16
      • 1970-01-01
      • 2020-09-09
      • 2019-11-10
      • 1970-01-01
      • 2014-11-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多