GRANT(过程)

存储过程外部过程的权限授予用户角色

语法

GRANT { EXECUTE | ALL [ PRIVILEGES ] }
   ON PROCEDURE [[database.]schema.]procedure( [arg-list] )[,...]
   TO grantee[,...]
   [ WITH GRANT OPTION ]

参数

EXECUTE
使被授予者能够运行指定的过程
ALL [PRIVILEGES]
授予同时属于授予者的所有过程权限。授予者不能授予其自身缺少的权限。

可选关键字 PRIVILEGES 符合 SQL 标准。

[database.]schema

数据库和架构。默认架构为 public。如果指定一个数据库,它必须是当前数据库。

过程
目标过程。
arg-list
过程实参的逗号分隔列表,其中每个实参指定如下:
[ argname ] argtype

如果过程未定义实参,请提供一个空的实参列表。

grantee

指定向谁授予权限,可以为以下值之一:

WITH GRANT OPTION

授予被授予者权限,以便将相同权限授予其他用户或角色的,也可以撤销它们。有关详细信息,请参阅授予权限

特权

非超级用户,为以下之一:

  • 所有者

  • 权限被授予者可以选择 (WITH GRANT OPTION) 将权限授予其他用户或角色

示例

tokenize 过程的 EXECUTE 权限授予用户 BobJules,以及授予角色 Operator

=> GRANT EXECUTE ON PROCEDURE tokenize(varchar) TO Bob, Jules, Operator;

另请参阅