我有以下脚本:
ALTER ROLE [db_datareader] ADD MEMBER [DomainGroup123]
当我针对SQL Server 2008 R2运行时,我收到此错误:
第15行,第1行,第1行,第1行 关键字“ADD”附近的语法不正确。
我已在线查看,发现examples使用了这个确切的声明(但是使用了不同的用户。)
我已经仔细检查过登录是否存在,并且是我正在使用的数据库上的有效用户。此外,我在服务器上拥有SA权限。
我在忙什么?
答案 0 :(得分:19)
使用sp_addrolemember。
EXECUTE sp_addrolemember db_datareader, 'UserName'
答案 1 :(得分:9)
找到了这个答案:https://stackoverflow.com/a/456365/16241
这告诉我,我可以像这样运行它:
exec sp_addrolemember db_datareader, [DomainGroup123]
我做到了,而且有效。
答案 2 :(得分:4)
我注意到,根据服务器的版本,我需要执行以下操作之一。
alter role RoleName add member UserName
或
execute sp_addrolemember RoleName, UserName
我正在考虑将我的方法从反复试验改为某种条件,但(a)这种操作在我的情况下很少进行,而且(b)我现在有点懒惰。