今天在进行procedure执行的时候,用的是PL/SQL工具中的test,调试方法进行执行,因为有输入参数,但是报了个错:
“note:debugging requires the debug connect session system privilege”.
原因是用户权限不够,使用以下命令授予权限:
GRANT debug any procedure, debug connect session TO username
其实只需要授予debug connect session 就可以了,已经过测试。
重要提示[role_*_pirvs视图与dba_*_privs视图的联系与区别]:
(1)role_**_pirvs视图仅仅能查看角色的系统权限、对象权限、角色权限。比较侠义,只能用于角色。
(2)dba_**_privs视图不仅能查看用户的系统权限、对象权限、角色权限 ,还能查看角色的系统权限、对象权限 、角色权限。 当视图的grantee字段赋值为某用户时,查询的是用户的相关信息,而当赋值为某角色时,查询的角色的相关信息。
上面的总结信息我亲自检验过,结论是正确的。
另外,如果查询某个角色包含哪些系统权限的话,可以查询:
(1)、系统权限:
select * from role_sys_privs; 【用字段role过滤】
ROLE_SYS_PRIVSROLE_SYS_PRIVS:describes system privileges granted to roles. Information is provided only about roles to which the user has access
(2)、对象权限:
select * from role_tab_privs;
【用字段role过滤】
ROLE_TAB_PRIVSROLE_TAB_PRIVS:describes table privileges granted to roles. Information is provided only about roles to which the user has access.
(3)、角色里都包含哪些角色:
select * from role_role_privs
【用字段role过滤】
ROLE_ROLE_PRIVSROLE_ROLE_PRIVS:describes the roles granted to other roles. Information is provided only about roles to which the user has access.