Oracle用户信息查询操作语句

Oracle用户信息查询操作语句
dba_XXX 需要有权限才能查看,否则会报表和视图不存在的错误

1. 查询所有用户(username, tablespace 信息)
[sql]
select * from dba_users; 
select * from all_users; 
//当前用户 
select * from user_users;   


2. 查看用户或角色的系统权限
[sql]
select * from dba_sys_privs; 
//当前用户拥有的权限 
select * from user_sys_privs; 
 
3. 查看当前登录用户所拥有的角色所包含的权限
[sql]
select * from role_sys_privs; 
 
4. 查看用户对象权限(对表和视图等的权限)
[sql]
select * from dba_tab_privs; 
select * from all_tab_privs;   
select * from user_tab_privs; 

5. 查看所有角色
[sql]
select * from dba_roles; 
 
6. 查看用户和角色所拥有的角色
[sql]
select * from dba_role_privs; 
select * from user_role_privs; 
 
7. 查询哪些用户有sysdba或sysopr 系统权限
[sql]
select * from v$PWFILE_USERS; 
 
 8. 查看一个用户所拥有的权限(username必须大写)
[sql]
select * from dba_sys_privs where grantee='USERNAME'; 
 
9. 删除指定用户的所有表
[sql]
select 'Drop table '||table_name||';' from all_tables where owner='USERNAME'; 


10. 删除用户
[sql]
drop user USERNAME cascade; 
 
11. 获取当前用户下所有的表
[sql]
select table_name from user_tables; 
12. 删除某用户下所有的表数据
[sql]
select 'truncate table '||tablename from user_tables; 

推荐阅读:

相关推荐