TSQL提供了在模式上创建函数的权限

时间:2015-04-01 12:27:38

标签: sql-server tsql

我有一个运行以下sql的程序:

CREATE FUNCTION [foo\bar].something
(

SQL看起来很好,但我收到了错误

The specified schema name "foo\bar" either does not exist or you do not have permission to use it.

我可以在数据库上运行什么SQL,以便获得模式访问权限来创建函数?我想我想将我的默认架构保持为dbo,只需访问其他[foo \ bar]架构。

2 个答案:

答案 0 :(得分:2)

SQL Server联机丛书在CREATE FUNCTION主题(https://msdn.microsoft.com/en-us/library/ms186755.aspx)中声明:

  

在数据库和ALTER中需要CREATE FUNCTION权限   对正在创建函数的模式的权限

答案 1 :(得分:0)

由于某些奇怪的原因,虽然我确实阅读了文档,但ALTER在我的具体案例中并不起作用

    GRANT ALL ON SCHEMA::[foo\bar] TO [TheUser]

解决了它。