gpt4 book ai didi

oracle - dbms_metadata.get_granted_ddl ('SYSTEM_GRANT' , 'AQ_ADMINISTRATOR_ROLE' ) ora-31608 错误的原因是什么?

转载 作者:行者123 更新时间:2023-12-02 02:15:06 26 4
gpt4 key购买 nike

我想使用 dbms_metadata 包获取数据库中所有角色的 ddls。不幸的是,当角色没有授权(对象、系统或角色类型)时,dbms_metadata.get_granted_ddl 失败并出现错误。这就是为什么我必须检查 dba_tab_privs、dba_sys_privs 和 dba_role_privs View 中是否存在特权。但是 AQ_ADMINISTRATOR_ROLE 角色具有系统权限,以下语句失败。检查了两个数据库。

sqlplus system/pass@db1

select dbms_metadata.get_granted_ddl('SYSTEM_GRANT', 'AQ_ADMINISTRATOR_ROLE')
from dual
where exists (select 1 from dba_sys_privs where grantee = 'AQ_ADMINISTRATOR_ROLE')
/

ORA-31608: specified object of type SYSTEM_GRANT not found ORA-06512: at "SYS.DBMS_METADATA", line 4018 ORA-06512: at "SYS.DBMS_METADATA", line 5991 ORA-06512: at line 1

select * from v$version
/

Oracle Database 11g Release 11.2.0.2.0 - 64bit Production PL/SQL
Release 11.2.0.2.0 - Production CORE 11.2.0.2.0 Production

最佳答案

如果没有与您的参数匹配的行,Oracle 将返回该异常。 QA_ADMINISTRATOR_ROLE 不能有 SYSTEM_GRANT 对象

关于oracle - dbms_metadata.get_granted_ddl ('SYSTEM_GRANT' , 'AQ_ADMINISTRATOR_ROLE' ) ora-31608 错误的原因是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11028773/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com