1
A
回答
4
使用DBMS_METADATA包:
set long 20000 longchunksize 20000 pagesize 0 linesize 1000 feedback off verify off trimspool on
column ddl format a1000
begin
dbms_metadata.set_transform_param (dbms_metadata.session_transform, 'SQLTERMINATOR', true);
dbms_metadata.set_transform_param (dbms_metadata.session_transform, 'PRETTY', true);
end;
/
variable v_role VARCHAR2(30);
exec :v_role := upper('&1');
select dbms_metadata.get_ddl('ROLE', r.role) AS ddl
from dba_roles r
where r.role = :v_role
union all
select dbms_metadata.get_granted_ddl('ROLE_GRANT', rp.grantee) AS ddl
from dba_role_privs rp
where rp.grantee = :v_role
and rownum = 1
union all
select dbms_metadata.get_granted_ddl('SYSTEM_GRANT', sp.grantee) AS ddl
from dba_sys_privs sp
where sp.grantee = :v_role
and rownum = 1
union all
select dbms_metadata.get_granted_ddl('OBJECT_GRANT', tp.grantee) AS ddl
from dba_tab_privs tp
where tp.grantee = :v_role
and rownum = 1
/
來源:https://oracle-base.com/dba/script?category=script_creation&file=role_ddl.sql
相關問題
- 1. 如何在Oracle數據庫
- 2. 如何在Oracle數據庫
- 3. 我們如何優化oracle數據庫?
- 4. 如何在Oracle數據庫從Java
- 5. 如何在多個Oracle數據庫中更改我的密碼?
- 6. 如何在我的oracle數據庫中使用TimeZone
- 7. 如何在Oracle 11g中恢復我的數據庫模式?
- 8. 如何將oracle數據庫數據從我的電腦遷移到virtualbox oracle數據庫
- 9. 我如何在數據庫
- 10. 數據庫oracle
- 11. 數據庫Oracle
- 12. Oracle數據庫
- 13. 哪些數據庫,如Oracle
- 14. 數據庫鎖,而在Oracle
- 15. 別名數據庫在Oracle
- 16. 如何從PostgreSQL數據庫訪問Oracle數據庫的源
- 17. 如何在Oracle 11g數據庫中插入Jtable數據
- 18. 如何在Oracle數據庫中分離二進制數據
- 19. 如何在angularjs中從oracle數據庫中獲取數據?
- 20. 如何在Oracle數據庫中生成隨機樣本數據?
- 21. Oracle如何處理數據庫連接?
- 22. 如何連接到oracle數據庫:((
- 23. 如何從PHP連接Oracle數據庫
- 24. 如何訪問oracle數據庫(VB.NET)
- 25. 如何獲取Oracle數據庫版本?
- 26. 如何發佈oracle數據庫?
- 27. 如何連接Oracle數據庫與JSP
- 28. 如何設置SonarQube 6 Oracle數據庫
- 29. 如何轉從Oracle數據庫
- 30. 如何監視oracle數據庫更新?
由於它的工作! –