我在SQL Server 2012中使用grant
为用户分配权限时收到错误。
SQL:
GRANT SELECT, INSERT, UPDATE, DELETE, EXECUTE, VIEW DEFINITION
ON test TO [logintest]
错误:
Msg 15151,Level 16,State 1,Line 1
找不到对象' test',因为它不存在或您没有权限。
答案 0 :(得分:2)
如果"测试"表或数据库对象不在" dbo"架构,您应该在GRANT命令中显式设置架构名称,如下所示:
GRANT SELECT, INSERT, UPDATE, DELETE, EXECUTE, VIEW DEFINITION
ON Sales.Orders TO [logintest]
在这种情况下,Orders表位于Sales架构
中或者,如错误消息所示,您可能没有必要的权限来授予其他用户
的权限答案 1 :(得分:1)
嗨,请参阅授权语法
Grant privilageName on objectName To{userName/Public/roleName} [with Grant opion]
例如
grant select on tbl_login to user24