oracle数据字典命名规则:
dba_:包含数据库实例所有的对象
v$_:当前实例动态视图,包含系统管理和系统优化等有使用的视图
user_:记录用户的对象信息
gv_:分布式环境下所有的实例动态视图,包含系统管理和系统优化等有使用的视图
all_:记录用户的对象信息机被授权访问的对象信息
包括基表(
它提供了数据库的一些系统信息
)和动态视图
(记载了例程启动后的相关信息)
动态视图包括:user_xxx; all_xxx; dba_xxx;
user_tables; 显示当前用户的表;只返回用户所对应方案的所有表
select table_name from user_tables;
all_tables; 显示当前用户可以访问的所有表,不仅返回当前用户方案的所有表,还会返回当前用户可以访问的其他方案的表
dba_tables;显示所有发难用户的数据库表,但是查询数据库字典视图,要求用户必须是dba角色或是有select any table系统
这些都是数据字典里的表或视图:
dba_users; 显示所有用户的表;select username from dba_users;查看所有用户名;
dba_sys_privs;可以显示用户或角色有具有的系统权限;
dba_tab_privs;对象权限;
dba_col_privs;列权限;
dba_role_privs;所有具有的角色权限;
dba_roles:查询系统预制的角色
dba_role_privs:查询用户具有什么样的角色;
select * from dba_roles;查询oracle中所有的角色;
select * from system_privilege_map order by name; 查询oracle中所有的系统权限;
select privilege from dba_tab_privs;查询oracle中所有对象权限;
select tablespace_name from dba_tablespaces;查询数据库表空间
select * from dba_role_privs where grantee='SCOTT';查询用户具有什么样的角色;
select * from global_name;查看当前数据库的名称;
user_sys_privs:当前用户的系统权限
user_tab_privs:当前用户的对象权限