Sql server 如何将sql权限授予作为dbo的不同架构中的对象?
这个 因错误而失败Sql server 如何将sql权限授予作为dbo的不同架构中的对象?,sql-server,sql-server-2012,privileges,Sql Server,Sql Server 2012,Privileges,这个 因错误而失败 Msg 15151,第16级,状态1,第1行 找不到对象“someTable”,因为它不存在或您没有权限。 如果我删除AS[dbo]部分,它可以正常工作。有人能解释为什么会这样,以及删除as dbo部分的含义吗 这适用于SQL Server 2012和GRANT-指定一个主体,执行此查询的主体从该主体获得授予权限的权利(从MSDN)。 因此,这意味着[dbo]没有权限在模式[test]上授予某些内容。我认为您应该在查询之前运行以下命令: GRANT EXECUTE ON OB
Msg 15151,第16级,状态1,第1行
找不到对象“someTable”,因为它不存在或您没有权限。
如果我删除AS[dbo]部分,它可以正常工作。有人能解释为什么会这样,以及删除as dbo部分的含义吗
这适用于SQL Server 2012和GRANT-指定一个主体,执行此查询的主体从该主体获得授予权限的权利(从MSDN)。 因此,这意味着
[dbo]
没有权限在模式[test]
上授予某些内容。我认为您应该在查询之前运行以下命令:
GRANT EXECUTE ON OBJECT::[test].[someTable] TO [MyUser] AS [dbo];
根据数据库的不同而有所不同。这看起来是MSFT:SQL Server,但请添加一个指示RDBMS和版本的标记。@xQbert我没有看到SQL2012标记,但已添加到OP@user3953989你找到问题的答案了吗?@gofr1我找到了,谢谢!对不起,我忘了更新这个我很高兴这对你有帮助!谢谢!:)
GRANT EXECUTE ON SCHEMA::[test] TO [dbo] WITH GRANT OPTION;