数据字典应用
2012-04-11 16:13
267 查看
oracle 11g中有多少角色:
SQL> select * from dict where table_name='DBA_ROLES';
TABLE_NAME
------------------------------
COMMENTS
------------------------------------------------------
------------------------------------------------------
DBA_ROLES
All Roles which exist in the database
SQL> select * from dba_roles;
ROLE PASSWORD
------------------------------ --------
CONNECT NO
RESOURCE NO
DBA NO
SELECT_CATALOG_ROLE NO
EXECUTE_CATALOG_ROLE NO
DELETE_CATALOG_ROLE NO
EXP_FULL_DATABASE NO
IMP_FULL_DATABASE NO
LOGSTDBY_ADMINISTRATOR NO
AQ_ADMINISTRATOR_ROLE NO
AQ_USER_ROLE NO
ROLE PASSWORD
------------------------------ --------
DATAPUMP_EXP_FULL_DATABASE NO
DATAPUMP_IMP_FULL_DATABASE NO
GATHER_SYSTEM_STATISTICS NO
RECOVERY_CATALOG_OWNER NO
SCHEDULER_ADMIN NO
HS_ADMIN_ROLE NO
GLOBAL_AQ_USER_ROLE GLOBAL
OEM_ADVISOR NO
OEM_MONITOR NO
WM_ADMIN_ROLE NO
JAVAUSERPRIV NO
ROLE PASSWORD
------------------------------ --------
JAVAIDPRIV NO
JAVASYSPRIV NO
JAVADEBUGPRIV NO
EJBCLIENT NO
JMXSERVER NO
JAVA_ADMIN NO
JAVA_DEPLOY NO
CTXAPP NO
XDBADMIN NO
XDB_SET_INVOKER NO
AUTHENTICATEDUSER NO
ROLE PASSWORD
------------------------------ --------
XDB_WEBSERVICES NO
XDB_WEBSERVICES_WITH_PUBLIC NO
XDB_WEBSERVICES_OVER_HTTP NO
SPATIAL_WFS_ADMIN YES
ORDADMIN NO
OLAPI_TRACE_USER NO
OLAP_XS_ADMIN NO
OLAP_DBA NO
CWM_USER NO
OLAP_USER NO
WFS_USR_ROLE YES
ROLE PASSWORD
------------------------------ --------
SPATIAL_CSW_ADMIN YES
CSW_USR_ROLE YES
WKUSER NO
MGMT_USER NO
OWB$CLIENT YES
OWB_DESIGNCENTER_VIEW YES
OWB_USER NO
已选择51行。
每个角色的系统权限是什么?两种方法,不同的数据字典。
SQL> select * from dba_sys_privs where grantee='RESOURCE';---大写权限名字
GRANTEE 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
已选择8行。
SQL> select * from role_sys_privs where role='RESOURCE';
ROLE PRIVILEGE
------------------------------ ----------------------------
RESOURCE CREATE TRIGGER
RESOURCE CREATE SEQUENCE
RESOURCE CREATE TYPE
RESOURCE CREATE PROCEDURE
RESOURCE CREATE CLUSTER
RESOURCE CREATE OPERATOR
RESOURCE CREATE INDEXTYPE
RESOURCE CREATE TABLE
已选择8行。
两种数据字典的区别?
SQL> desc dba_sys_privs;
名称 是否为空? 类型
----------------------------------------- -------- ----------------
GRANTEE NOT NULL VARCHAR2(30)
PRIVILEGE NOT NULL VARCHAR2(40)
ADMIN_OPTION VARCHAR2(3)
SQL> desc role_sys_privs;
名称 是否为空? 类型
----------------------------------------- -------- ----------------
ROLE NOT NULL VARCHAR2(30)
PRIVILEGE NOT NULL VARCHAR2(40)
ADMIN_OPTION VARCHAR2(3)
SQL> select * from dict where table_name='DBA_SYS_PRIVS';
TABLE_NAME
------------------------------
COMMENTS
----------------------------------------------------------
----------------------------------------------------------
DBA_SYS_PRIVS
System privileges granted to users and roles
SQL> select * from dict where table_name='ROLE_SYS_PRIVS';
TABLE_NAME
------------------------------
COMMENTS
-----------------------------------------------------------
-----------------------------------------------------------
ROLE_SYS_PRIVS
System privileges granted to roles
//可以看到dba_sys_privs是users and roles 权限的说明,而role_sys_privs仅仅是对roles权限的说明。哈哈。。。明白了!不明白呀!好的,我们知道scott是数据库中的一个用户,那么他有怎样的权限呢?
我先用dba_sys_privs查看:
SQL> select * from dba_sys_privs where grantee='SCOTT';
GRANTEE PRIVILEGE ADM
------------------------------ ---------------------------------------- ---
SCOTT CREATE SYNONYM NO
SCOTT UNLIMITED TABLESPACE NO
yes!可以看见是吧?
那我再用role_sys_privs查看:
SQL> select * from role_sys_privs where role='SCOTT';
未选定行
是的,没有结果。这足以说明问题了吧!
每个角色的对象权限呢?
SQL> select * from dba_tab_privs where grantee='WKUSER';
GRANTEE OWNER TABLE_NAME GRANTOR PRIVILEGE GRA HIE
------------------------------ ------------------------------ ------------------------------ ------------------------------ ---------------------------------------- --- ---
WKUSER SYS DBMS_LOCK SYS EXECUTE NO NO
当前数据库全名称?
SQL> select * from global_name;
GLOBAL_NAME
---------------------------------
TEST
global_name是干啥用的?
SQL> select * from dict where table_name like 'GLOBAL_NAME';
TABLE_NAME
------------------------------
COMMENTS
-------------------------------------------------------------
-------------------------------------------------------------
GLOBAL_NAME
global database name
golbal_name和v$database的区别是?
SQL> select * from dict where table_name='V$DATABASE';
TABLE_NAME
------------------------------
COMMENTS
--------------------------------------------------------
--------------------------------------------------------
V$DATABASE
Synonym for V_$DATABASE
//可以看到V$DATABASE是V_$DATABASE的同名表
SQL> select * from dict where table_name='DBA_ROLES';
TABLE_NAME
------------------------------
COMMENTS
------------------------------------------------------
------------------------------------------------------
DBA_ROLES
All Roles which exist in the database
SQL> select * from dba_roles;
ROLE PASSWORD
------------------------------ --------
CONNECT NO
RESOURCE NO
DBA NO
SELECT_CATALOG_ROLE NO
EXECUTE_CATALOG_ROLE NO
DELETE_CATALOG_ROLE NO
EXP_FULL_DATABASE NO
IMP_FULL_DATABASE NO
LOGSTDBY_ADMINISTRATOR NO
AQ_ADMINISTRATOR_ROLE NO
AQ_USER_ROLE NO
ROLE PASSWORD
------------------------------ --------
DATAPUMP_EXP_FULL_DATABASE NO
DATAPUMP_IMP_FULL_DATABASE NO
GATHER_SYSTEM_STATISTICS NO
RECOVERY_CATALOG_OWNER NO
SCHEDULER_ADMIN NO
HS_ADMIN_ROLE NO
GLOBAL_AQ_USER_ROLE GLOBAL
OEM_ADVISOR NO
OEM_MONITOR NO
WM_ADMIN_ROLE NO
JAVAUSERPRIV NO
ROLE PASSWORD
------------------------------ --------
JAVAIDPRIV NO
JAVASYSPRIV NO
JAVADEBUGPRIV NO
EJBCLIENT NO
JMXSERVER NO
JAVA_ADMIN NO
JAVA_DEPLOY NO
CTXAPP NO
XDBADMIN NO
XDB_SET_INVOKER NO
AUTHENTICATEDUSER NO
ROLE PASSWORD
------------------------------ --------
XDB_WEBSERVICES NO
XDB_WEBSERVICES_WITH_PUBLIC NO
XDB_WEBSERVICES_OVER_HTTP NO
SPATIAL_WFS_ADMIN YES
ORDADMIN NO
OLAPI_TRACE_USER NO
OLAP_XS_ADMIN NO
OLAP_DBA NO
CWM_USER NO
OLAP_USER NO
WFS_USR_ROLE YES
ROLE PASSWORD
------------------------------ --------
SPATIAL_CSW_ADMIN YES
CSW_USR_ROLE YES
WKUSER NO
MGMT_USER NO
OWB$CLIENT YES
OWB_DESIGNCENTER_VIEW YES
OWB_USER NO
已选择51行。
每个角色的系统权限是什么?两种方法,不同的数据字典。
SQL> select * from dba_sys_privs where grantee='RESOURCE';---大写权限名字
GRANTEE 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
已选择8行。
SQL> select * from role_sys_privs where role='RESOURCE';
ROLE PRIVILEGE
------------------------------ ----------------------------
RESOURCE CREATE TRIGGER
RESOURCE CREATE SEQUENCE
RESOURCE CREATE TYPE
RESOURCE CREATE PROCEDURE
RESOURCE CREATE CLUSTER
RESOURCE CREATE OPERATOR
RESOURCE CREATE INDEXTYPE
RESOURCE CREATE TABLE
已选择8行。
两种数据字典的区别?
SQL> desc dba_sys_privs;
名称 是否为空? 类型
----------------------------------------- -------- ----------------
GRANTEE NOT NULL VARCHAR2(30)
PRIVILEGE NOT NULL VARCHAR2(40)
ADMIN_OPTION VARCHAR2(3)
SQL> desc role_sys_privs;
名称 是否为空? 类型
----------------------------------------- -------- ----------------
ROLE NOT NULL VARCHAR2(30)
PRIVILEGE NOT NULL VARCHAR2(40)
ADMIN_OPTION VARCHAR2(3)
SQL> select * from dict where table_name='DBA_SYS_PRIVS';
TABLE_NAME
------------------------------
COMMENTS
----------------------------------------------------------
----------------------------------------------------------
DBA_SYS_PRIVS
System privileges granted to users and roles
SQL> select * from dict where table_name='ROLE_SYS_PRIVS';
TABLE_NAME
------------------------------
COMMENTS
-----------------------------------------------------------
-----------------------------------------------------------
ROLE_SYS_PRIVS
System privileges granted to roles
//可以看到dba_sys_privs是users and roles 权限的说明,而role_sys_privs仅仅是对roles权限的说明。哈哈。。。明白了!不明白呀!好的,我们知道scott是数据库中的一个用户,那么他有怎样的权限呢?
我先用dba_sys_privs查看:
SQL> select * from dba_sys_privs where grantee='SCOTT';
GRANTEE PRIVILEGE ADM
------------------------------ ---------------------------------------- ---
SCOTT CREATE SYNONYM NO
SCOTT UNLIMITED TABLESPACE NO
yes!可以看见是吧?
那我再用role_sys_privs查看:
SQL> select * from role_sys_privs where role='SCOTT';
未选定行
是的,没有结果。这足以说明问题了吧!
每个角色的对象权限呢?
SQL> select * from dba_tab_privs where grantee='WKUSER';
GRANTEE OWNER TABLE_NAME GRANTOR PRIVILEGE GRA HIE
------------------------------ ------------------------------ ------------------------------ ------------------------------ ---------------------------------------- --- ---
WKUSER SYS DBMS_LOCK SYS EXECUTE NO NO
当前数据库全名称?
SQL> select * from global_name;
GLOBAL_NAME
---------------------------------
TEST
global_name是干啥用的?
SQL> select * from dict where table_name like 'GLOBAL_NAME';
TABLE_NAME
------------------------------
COMMENTS
-------------------------------------------------------------
-------------------------------------------------------------
GLOBAL_NAME
global database name
golbal_name和v$database的区别是?
SQL> select * from dict where table_name='V$DATABASE';
TABLE_NAME
------------------------------
COMMENTS
--------------------------------------------------------
--------------------------------------------------------
V$DATABASE
Synonym for V_$DATABASE
//可以看到V$DATABASE是V_$DATABASE的同名表
相关文章推荐
- 应用开发中数据字典项设计实现方案
- Oracle数据字典的应用实例
- Oracle教程之Oracle管理数据字典(二)--Oracle数据字典的应用
- 数组和字典的应用数据
- 读取xml数据装配到字典中之应用场景
- 应用开发框架之——数据字典、原数据、模板
- 【PHP应用】mysql数据字典生成器
- Oracle数据字典的介绍与应用实例
- Oracle数据字典的应用实例
- SQL应用中级指南 Part4:(数据字典)
- 数据字典的应用实例
- 常用数据库设计1--数据字典设计与应用
- 【软件工程】软件工程中应用的几种图辨析:系统流程图、数据流图、数据字典、实体联系图、状态转换图、层次方框图、Warnier图、IPO图、层次图、HIPO图、结构图、程序流程图、盒图、PAD图、判定表、
- oracle数据字典应用实例
- ssm redis 数据字典在J2EE中的多种应用与实现
- 数据字典在web中的简单应用
- 应用开发中数据字典项设计实现方案
- 应用开发中数据字典项设计实现方案
- 应用开发中数据字典项设计实现方案
- db2中对数据字典的应用