教您如何復(fù)制ORACLE用戶權(quán)限
如何復(fù)制ORACLE用戶權(quán)限是很多人提到過(guò)的問(wèn)題,下面就對(duì)復(fù)制ORACLE用戶權(quán)限的方法作詳細(xì)的分析介紹,如果您對(duì)ORACLE用戶權(quán)限方面感興趣的話,不妨一看。
解釋:
如果要實(shí)現(xiàn)權(quán)限賦予表是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;
- /
以上就是復(fù)制ORACLE用戶權(quán)限的方法介紹。
【編輯推薦】
Oracle批量賦權(quán)的實(shí)現(xiàn)
oracle查詢當(dāng)前時(shí)間的實(shí)現(xiàn)