1

如何创建可以从不同用户处使用的功能?它必须像内置的 oracle 函数一样工作,可以从任何用户调用。我想这可以通过授予一些特权来实现..?

4

1 回答 1

5

这应该针对特定用户执行此操作:

GRANT EXECUTE ON your_function TO some_user;

您可以通过这种方式允许所有用户访问:

GRANT EXECUTE ON your_function TO PUBLIC;

要从另一个用户帐户引用此函数,请执行以下操作:

SELECT owner.your_function FROM dual;

如果您想避免在函数引用中指定拥有模式,请为其创建一个公共同义词:

CREATE PUBLIC SYNONYM your_function FOR owner.your_function;

然后任何人都可以通过这种方式引用该函数:

SELECT your_function FROM dual;
于 2012-09-07T15:28:34.473 回答