我如何授予执行语句
How can i grant an execute statment
我想将触发器、功能和过程授予角色。我有代码可以用过程来完成,但是用触发器和函数它不起作用。
create role Level1;
grant execute any trigger to Level1;
grant execute any procedure to Level1;
用户拥有 tables、函数和过程。该用户创建了一个角色,并希望向该角色授予对各种对象的执行权限。
对于触发器,它没有意义 - 它们会在创建它们的 table 上的某些操作上触发。因此,您将授予对 table 的权限,而不是对触发器
的权限
对于函数和过程,您将授予对确切函数和过程的执行权限(而不是在单个语句中对所有函数和过程授予执行权限),例如
grant execute on p_insert_student to level1;
grant execute on f_average_marks to level1;
您发布的(grant execute any procedure
)是系统权限;这有点危险;您确定要让 level1
绝对执行数据库中的任何过程吗?
此外,没有单独的功能拨款;在这种情况下,它们被认为是 程序 因此 execute any procedure
也会影响函数。
我想将触发器、功能和过程授予角色。我有代码可以用过程来完成,但是用触发器和函数它不起作用。
create role Level1;
grant execute any trigger to Level1;
grant execute any procedure to Level1;
用户拥有 tables、函数和过程。该用户创建了一个角色,并希望向该角色授予对各种对象的执行权限。
对于触发器,它没有意义 - 它们会在创建它们的 table 上的某些操作上触发。因此,您将授予对 table 的权限,而不是对触发器
的权限对于函数和过程,您将授予对确切函数和过程的执行权限(而不是在单个语句中对所有函数和过程授予执行权限),例如
grant execute on p_insert_student to level1; grant execute on f_average_marks to level1;
您发布的(grant execute any procedure
)是系统权限;这有点危险;您确定要让 level1
绝对执行数据库中的任何过程吗?
此外,没有单独的功能拨款;在这种情况下,它们被认为是 程序 因此 execute any procedure
也会影响函数。