如何復制Oracle用戶權限是很多人提到過的問題,下面就對復制Oracle用戶權限的方法作詳細的分析介紹,如果您對Oracle用戶權限方面感興趣的話,不妨一看。
解釋:
如果要實現權限賦予表是ALL ,視圖是SELECT其他是EXECUTE
- DECODE (object_type, 'TABLE', 'ALL', 'VIEW', 'SELECT', 'EXECUTE')
然後修改 EXECUTE IMMEDIATE 'grant' || rec.grant_type || 'on ' || rec.object_name || ' to ' || p_grantee;
1).logon as grantor, for instance USER1
2). run PL/SQL scripts:
- DECLARE
- p_grantee VARCHAR2(30):='ywxt_module_admin';
- BEGIN
- FOR rec IN (SELECT object_name, object_type
- , DECODE (object_type, 'TABLE', 'ALL', 'VIEW', 'SELECT', 'EXECUTE') grant_type FROM user_objects)
- LOOP
- BEGIN
- EXECUTE IMMEDIATE 'grant all on ' || rec.object_name || ' to ' || p_grantee;
- EXCEPTION
- WHEN OTHERS THEN
- DBMS_OUTPUT.PUT_LINE(SUBSTR (SQLERRM,1,240));
- END;
- END LOOP;
- END;
- /
以上就是復制Oracle用戶權限的方法介紹。