01-查询Oracle中所有用户信息

[[email protected] ~]# su - oracle

[[email protected] ~]$ sqlplus /nolog

SQL*Plus: Release 10.2.0.1.0 - Production on Tue Jul 8 21:47:01 2014

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

SQL> conn /as sysdba;

Connected.

查询Oracle中所有用户信息

1.查看所有用户:

select * from dba_users;

select * from all_users;

select * from user_users;

2.查看用户或角色系统权限(直接赋值给用户或角色的系统权限):

select * from dba_sys_privs;

select * from user_sys_privs; (查看当前用户所拥有的权限)

3.查看角色(只能查看登陆用户拥有的角色)所包含的权限

sql>select * from role_sys_privs;

4.查看用户对象权限:

select * from dba_tab_privs;

select * from all_tab_privs;

select * from user_tab_privs;

5.查看所有角色: select * from dba_roles;

6.查看用户或角色所拥有的角色:

select * from dba_role_privs;

select * from user_role_privs;

7.查看哪些用户有sysdba或sysoper系统权限(查询时需要相应权限)

select * from V$PWFILE_USERS

8.SqlPlus中查看一个用户所拥有权限

SQL>select * from dba_sys_privs where grantee=‘username‘; 其中的username即用户名要大写才行。

比如: SQL>select * from dba_sys_privs where grantee=‘TOM‘;

9、Oracle删除指定用户所有表的方法

select ‘Drop table ‘||table_name||‘;‘ from all_tables where owner=‘要删除的用户名(注意要大写)‘;

10、删除用户

drop user user_name cascade; 如:drop user SMCHANNEL CASCADE

11、获取当前用户下所有的表:

select table_name from user_tables;

12、删除某用户下所有的表数据:

select ‘truncate table  ‘ || table_name from user_tables;

13、禁止外键 ORACLE数据库中的外键约束名都在表user_constraints中可以查到。

其中constraint_type=‘R‘表示是外键约束。

启用外键约束的命令为:alter table table_name enable constraint constraint_name

禁用外键约束的命令为:alter table table_name disable constraint constraint_name

然后再用SQL查出数据库中所以外键的约束名:

select ‘alter table ‘||table_name||‘ enable constraint ‘||constraint_name||‘;‘ from user_constraints where constraint_type=‘R‘

select ‘alter table ‘||table_name||‘ disable constraint ‘||constraint_name||‘;‘ from user_constraints where constraint_type=‘R‘

14、ORACLE禁用/启用外键和触发器 --启用脚本

SET SERVEROUTPUT ON SIZE 1000000

BEGIN

for c in (select ‘ALTER TABLE ‘||TABLE_NAME||‘ ENABLE CONSTRAINT ‘||constraint_name||‘ ‘ as v_sql from user_constraints

where CONSTRAINT_TYPE=‘R‘) loop

DBMS_OUTPUT.PUT_LINE(C.V_SQL);

begin

EXECUTE IMMEDIATE c.v_sql;

exception when others then

dbms_output.put_line(sqlerrm);

end;

end loop;

for c in (select ‘ALTER TABLE ‘||TNAME||‘ ENABLE ALL TRIGGERS ‘ AS v_sql from tab where tabtype=‘TABLE‘) loop

dbms_output.put_line(c.v_sql);

begin

execute immediate c.v_sql;

exception when others then

dbms_output.put_line(sqlerrm);

end;

end loop;

end;

/

commit;

--禁用脚本

SET SERVEROUTPUT ON SIZE 1000000

BEGIN

for c in (select ‘ALTER TABLE ‘||TABLE_NAME||‘ DISABLE CONSTRAINT ‘||constraint_name||‘ ‘ as v_sql from user_constraints

where CONSTRAINT_TYPE=‘R‘) loop

DBMS_OUTPUT.PUT_LINE(C.V_SQL);

begin

EXECUTE IMMEDIATE c.v_sql;

exception when others then

dbms_output.put_line(sqlerrm);

end;

end loop;

for c in (select ‘ALTER TABLE ‘||TNAME||‘ DISABLE ALL TRIGGERS ‘ AS v_sql from tab where tabtype=‘TABLE‘) loop

dbms_output.put_line(c.v_sql);

begin

execute immediate c.v_sql;

exception when others then

dbms_output.put_line(sqlerrm);

end;

end loop;

end;

/

commit;

01-查询Oracle中所有用户信息,布布扣,bubuko.com

时间: 2024-10-20 07:35:17

01-查询Oracle中所有用户信息的相关文章

查询oracle中所有用户信息

1.查看所有用户:select * from dba_users;   select * from all_users;   select * from user_users; 2.查看用户或角色系统权限(直接赋值给用户或角色的系统权限):select * from dba_sys_privs;   select * from user_sys_privs; (查看当前用户所拥有的权限) 3.查看角色(只能查看登陆用户拥有的角色)所包含的权限sql>select * from role_sys_

oracle查看当前用户信息

一.查看当前用户信息: 1.查看当前用户拥有的角色权限信息:select * from role_sys_privs; 2.查看当前用户的详细信息:select * from user_users; 3.查看当前用户的角色信息:select * from user_role_privs; 总结:ORACLE中数据字典视图分为3大类,用前缀区别,分别为:USER,ALL 和 DBA, 许多数据字典视图包含相似的信息. USER_*:有关用户所拥有的对象信息,即用户自己创建的对象信息. ALL_*:

如何用Excel直接查询Oracle中的数据(转)

将Oracle中查询的数据保存为Excel文件,通常使用的是PL/SQL Developer. 其实,Excel可直接写SQL语句查询Oracle中数据,在这里,用到ODBC驱动.详细步骤如下: 一.配置ODBC数据源 开始->控制面板->系统和安全->管理工具->ODBC数据源(可根据自己的情况选择32位还是64位). 因本机安装的是Oracle 11.2.0.4 64位,故选择ODBC数据源(64位),显示如下: 点击“添加”,选择“Oracle in OraDb11g_hom

Oracle中pls_logger记录日志信息

/* 参数说明: pi_program_name 程序名称 pi_directory 写入日志文件所在的目录 pi_file 日志文件名称,必须存在 pi_log_level 日记级别,INFO.WARN.FATAL pi_write_to 写到哪里,SCREEN.FILE.TABLE.ALL pi_error_message 写入到日志的错误信息 pi_status 输出参数 1失败 0成功 */ BEGIN pls_logger ( pi_program_name => 'SCREEN_PR

获得session中的用户信息

由于每个系统都有往session中放入用户信息以及把用户信息取出来的模块,而且在session中取出用户信息的地方非常之多,所以有必要把session中对用户的操作封装成为一个工具类,以便在以后的使用过程中更加的方便,以及使得项目更加具有模块化: Class UserUtil{ public static AdminUser getUser(){ AdminUser adminUser = null; if(SecurityUtils.getSubject().getSession().getA

(转载)VB 查询Oracle中blob类型字段,并且把blob中的图片以流的方式显示在Image上

原文摘自:http://heisetoufa.iteye.com/blog/504068 '模块代码 Private Declare Function CreateStreamOnHGlobal Lib "ole32" (ByVal hGlobal As Long, ByVal fDeleteOnRelease As Long, ppstm As Any) As Long Private Declare Function OleLoadPicture Lib "olepro3

.net中保存用户信息的九种方法

.net中保存用户信息的九种方法 在ASP.NET中,有几种保持用户请求间数据的途径--实际上太多了,使没有经验的开发者对在哪个特定的环境下使用哪个对象很困惑.为了回答这个问题,需要考虑下面三个条件: .谁需要数据? .数据需要保持多长时间? .数据集有多大? 通过回答这些问题,你能决定哪个对象为保持ASP.NET应用程序请求间数据提供了最佳的解决方案.图1列出了不同的状态管理对象并描述了什么时候使用它们.ASP.NET中添加了四个新的对象:Cache.Context.ViewState和Web

查询oracle中用户信息

1.查看所有用户:select * from dba_users;   select * from all_users;   select * from user_users; 2.查看用户或角色系统权限(直接赋值给用户或角色的系统权限):select * from dba_sys_privs;   select * from user_sys_privs; (查看当前用户所拥有的权限) 3.查看角色(只能查看登陆用户拥有的角色)所包含的权限sql>select * from role_sys_

如何查询Oracle中用户所有信息

1.查看所有用户: select * from dba_users;   select * from all_users;   select * from user_users; 2.查看用户或角色系统权限(直接赋值给用户或角色的系统权限): select * from dba_sys_privs;   select * from user_sys_privs; (查看当前用户所拥有的权限) 3.查看角色(只能查看登陆用户拥有的角色)所包含的权限 sql>select * from role_s