欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Oracle查詢用戶擁有所有系統(tǒng)權(quán)限的方法

 更新時間:2024年12月27日 09:21:36   作者:數(shù)據(jù)派  
這篇文章主要介紹了Oracle查詢用戶擁有所有系統(tǒng)權(quán)限,本文通過實例代碼給大家介紹的非常詳細,感興趣的朋友一起看看吧

Oracle查詢用戶擁有所有系統(tǒng)權(quán)限

SQL> desc dba_sys_privs;   查詢對象擁有的系統(tǒng)權(quán)限
 Name                                     Null?    Type
 ---------------------------------------- -------- ---------------------------
 GRANTEE                                  NOT NULL VARCHAR2(30)
 PRIVILEGE                                NOT NULL VARCHAR2(40)
 ADMIN_OPTION                                      VARCHAR2(3)
SQL> select * from dba_sys_privs where grantee='HR';
GRANTEE                        PRIVILEGE                                ADM
------------------------------ ---------------------------------------- ---
HR                             UNLIMITED TABLESPACE                     NO
HR                             CREATE SESSION                           NO
HR                             CREATE TABLE                             NO
SQL> desc dba_role_privs;
 Name                                     Null?    Type
 ---------------------------------------- -------- ---------------------------
 USERNAME                                          VARCHAR2(30)
 GRANTED_ROLE                                      VARCHAR2(30)
 ADMIN_OPTION                                      VARCHAR2(3)
 DEFAULT_ROLE                                      VARCHAR2(3)
 OS_GRANTED                                        VARCHAR2(3)
SQL> select * from dba_role_privs where grantee='HR';對象擁有的角色
GRANTEE                        GRANTED_ROLE                   ADM DEF
------------------------------ ------------------------------ --- ---
HR                             RESOURCE                       NO  YES
SQL> select * from role_sys_privs where ROLE='RESOURCE';  通過角色查找權(quán)限
ROLE                           PRIVILEGE                                ADM
------------------------------ ---------------------------------------- ---
RESOURCE                       CREATE TRIGGER                           NO
RESOURCE                       CREATE SEQUENCE                          NO
RESOURCE                       CREATE TYPE                              NO
RESOURCE                       CREATE PROCEDURE                         NO
RESOURCE                       CREATE CLUSTER                           NO
RESOURCE                       CREATE OPERATOR                          NO
RESOURCE                       CREATE INDEXTYPE                         NO
RESOURCE                       CREATE TABLE                             NO
SQL>  select a.granted_role,b.privilege,c.privilege
     From dba_role_privs a,role_sys_privs b ,dba_sys_privs c
   Where a.granted_role=b.role and a.grantee=c.grantee and a.grantee='HR
RESOURCE        CREATE SEQUENCE      UNLIMITED TABLESPACE
RESOURCE        CREATE INDEXTYPE     CREATE SESSION
--看起來很美好,但是這是等值才返回結(jié)果,1=1=1   3*8=24t條記錄
select a.granted_role,b.privilege,c.privilege from dba_role_privs
a join role_sys_privs b on a.granted_role=b.role join dba_sys_privs
c on a.grantee=c.grantee and a.grantee='HR';  --一樣無法達到效果;
--a  通過用戶查找擁有的角色
select * from dba_role_privs  grantee granted_role
-b  通過角色查找擁有的權(quán)限
select * from role_sys_privs    1-2 role  granted_role
-c 通過用戶查找擁有的系統(tǒng)權(quán)限
select * from dba_sys_privs  1-3 grantee 
--思路1+2=2 => 2+3=總
select * from (select a.grantee,b.privilege from
 dba_role_privs a join role_sys_privs b on a.granted_role=b.role
  union
   select c.grantee,c.privilege from dba_sys_privs c)
    where grantee='HR';
--于上一樣--where條件執(zhí)行速度更快
select a.grantee,b.privilege from
 dba_role_privs a join role_sys_privs b 
    on a.granted_role=b.role where grantee='HR'
  union 
   select c.grantee,c.privilege from dba_sys_privs c where grantee='HR';
意義:有些權(quán)限不是通過角色單獨授予、或者單獨授予權(quán)限:通過集合更好查找用戶有啥權(quán)限
 ****補充:
--什么是對象權(quán)限,設(shè)計到具體的針對某一個對象的權(quán)限;
grant select on scott.dept to hr;
查詢會有具體對象的權(quán)限;
select * from dba_tab_privs where grantee='HR';
HR         SYS        YANG       SYS        WRITE      NO  NO
HR         SYS        YANG       SYS        READ       NO  NO
HR         SYS        DBMS_STATS SYS        EXECUTE    NO  NO
HR         SCOTT      DEPT       SCOTT      SELECT     NO  NO
回收: revoke execute on sys.DBMS_STATS from hr;

到此這篇關(guān)于Oracle查詢用戶擁有所有系統(tǒng)權(quán)限的文章就介紹到這了,更多相關(guān)Oracle查詢用戶擁有權(quán)限內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解oracle中通過觸發(fā)器記錄每個語句影響總行數(shù)

    詳解oracle中通過觸發(fā)器記錄每個語句影響總行數(shù)

    這篇文章主要介紹了詳解oracle中通過觸發(fā)器記錄每個語句影響總行數(shù)的相關(guān)資料,需要的朋友可以參考下
    2017-06-06
  • Oracle SCN與檢查點詳解

    Oracle SCN與檢查點詳解

    這篇文章主要介紹了Oracle SCN與檢查點的相關(guān)內(nèi)容,涉及SCN的定義,獲取方式,以及檢查點的相關(guān)介紹,需要的朋友可以了解下。
    2017-09-09
  • ORACLE如何批量插入(Insert)

    ORACLE如何批量插入(Insert)

    這篇文章主要介紹了ORACLE如何批量插入(Insert),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • oracle group by語句實例測試

    oracle group by語句實例測試

    本文將詳細介紹oracle group by語句,以實例進行測試,需要的朋友可以參考下
    2012-11-11
  • Oracle?Users表空間重命名問題解決

    Oracle?Users表空間重命名問題解決

    這篇文章主要介紹了Oracle?Users表空間重命名問題,本文通過示例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-06-06
  • Oracle配置dblink訪問PostgreSQL的操作方法

    Oracle配置dblink訪問PostgreSQL的操作方法

    本文給大家介紹下Oracle配置dblink訪問PostgreSQL的操作方法,通過dblink訪問PostgreSQL的詳細過程,對Oracle?dblink訪問PostgreSQL相關(guān)知識感興趣的朋友一起看看吧
    2022-03-03
  • Oracle數(shù)據(jù)庫創(chuàng)建dblink的過程及其用法實例詳解

    Oracle數(shù)據(jù)庫創(chuàng)建dblink的過程及其用法實例詳解

    這篇文章主要給大家介紹了Oracle數(shù)據(jù)庫創(chuàng)建dblink的過程及其用法的相關(guān)資料,dblink是Oracle數(shù)據(jù)庫中用于連接不同數(shù)據(jù)庫實例的機制,允許用戶在一個數(shù)據(jù)庫實例中直接查詢或操作另一個數(shù)據(jù)庫實例中的數(shù)據(jù),需要的朋友可以參考下
    2024-12-12
  • oracle學(xué)習(xí)筆記(三)

    oracle學(xué)習(xí)筆記(三)

    最近需要用的oracle,所以大家好好的學(xué)習(xí)下基礎(chǔ)并整理下資料,希望能幫助到需要的朋友。
    2011-12-12
  • Oracle用戶密碼含有特殊字符導(dǎo)致無法登陸解決方法

    Oracle用戶密碼含有特殊字符導(dǎo)致無法登陸解決方法

    在客戶端上使用sqlplus用普通用戶可以登錄,但是system以及sys用戶均無法登錄,提示ORA-12154: TNS: 無法解析指定的連接標(biāo)識符,本文將提供詳細的解決方法,需要了解的朋友可以參考下
    2012-11-11
  • Oracle使用in語句不能超過1000問題的解決辦法

    Oracle使用in語句不能超過1000問題的解決辦法

    最近項目中使用到了Oracle中where語句中的in條件查詢語句,在使用中發(fā)現(xiàn)了問題,所以下面這篇文章主要給大家介紹了關(guān)于Oracle使用in語句不能超過1000問題的解決辦法,需要的朋友可以參考下
    2022-05-05

最新評論