无法在sql中授予对database_principal的访问权限

时间:2015-01-10 14:29:38

标签: sql sql-server ssms

我正在尝试运行以下语句

GRANT SUBSCRIBE QUERY NOTIFICATIONS TO database_principal

但是我收到以下错误

  

找不到用户' database_principal',因为它不存在   或者你没有得到许可。

有谁知道这个问题?

1 个答案:

答案 0 :(得分:0)

您不能使用问题中的 database_principal ,您必须specify the principal这里是正确的模板:

GRANT permission [ ,...n ]  
ON 
{  [ USER :: database_user ]
 | [ ROLE :: database_role ]
 | [ APPLICATION ROLE :: application_role ]
}
TO <database_principal> [ ,...n ]
   [ WITH GRANT OPTION ]
   [ AS <database_principal> ]

<database_principal> ::=
  Database_user 
  | Database_role 
  | Application_role 
  | Database_user_mapped_to_Windows_User 
  | Database_user_mapped_to_Windows_Group 
  | Database_user_mapped_to_certificate 
  | Database_user_mapped_to_asymmetric_key 
  | Database_user_with_no_login

示例:

GRANT SUBSCRIBE QUERY NOTIFICATIONS TO test_user;
  

如果您想启用查询通知,则必须执行额外操作   configs here是一个有用的链接