查询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;

时间: 2024-11-09 00:31:10

查询oracle中用户信息的相关文章

查询、删除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.查看角色(只能查看登陆用户拥有

如何查询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

如何用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

(转载)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

Oracle中用户的基本操作

创建用户 1.首先登陆到系统用户sys(sys用户具有创建用户的权限). 2.然后在代码编辑框写入创建用户的代码. 语法:CREATE USER uer_name IDENTIFIED BY password; 示例:CREATE USER student IDENTIFIED BY 123456;创建了一个student用户,登陆密码为123456. 3.default_tablespace:用户的默认表空间,用于储存数据库对象.如果忽略此参数,则默认存储到SYSTEM表空间 temporar

银行管理系统 实现用户注册 登录 存、取款 交易记录查询和修改用户信息等功能

========= 项    目   介   绍======== 银行账户管理系统 本项目主要实现用户注册 登录 存.取钱和修改用户信息功能. 用户信息的存储和获取通过集合和IO输入输出流实现. 存钱 取钱功能通过修改用户信息中的余额实现 修改用户信息 要先获取用户信息 ,再把修改后的信息保存到List中,同时必须删除原有的用户信息. ========项目功能需求============= 该银行管理系统可以实现 以下主要几个功能 用户注册   注册成功才能进行用户登录 用户登录  登录成功后

ThreadLocal实现session中用户信息 的线程间共享(精)

ThreadLocal并不难理解,我总结的最简单的理解就是: ThreadLocal像其它变量一样(局部.全局.静态)也是一种变量类型,只是他是线程变量,更直白的说他是一种变量作用域,即他的作用域是当前线程(比如用户的一个请求算一个线程),ThreadLocal用于在一个线程间共享. ThreadLocal的set(String,Object)方法就是设置这个变量的名称.同时给这个变量赋值.当然同时也给予了这个变量的类型. @SuppressWarnings("unchecked")

Oracle中用户(User)和模式(Schema)的概念

数据库理论中数据库用户和数据库模式并没有必然的联系,详细的数据库模式解释可以在这里找到: http://stackoverflow.com/questions/2674222/what-is-purpose-of-database-schema A database schema is a way to logically group objects such as tables, views, stored procedures etc. Think of a schema as a cont

linux中用户信息及密码相关知识

在linux中若修改用户信息.密码,组群信息.密码等.其实是在修改/etc/passwd,/etc/shadow,/etc/group,/etc/groupshadow等文件的内容. 这四个文件的意思分别是: 用户帐号信息文件.用户口令文件.用户组信息文件.用户组口令信息文件 具体内容可以分别打开看看.都是文本文件.结构清晰 这里具体说说口令信息文件. shadow文件(包括用户口令和组口令文件)个人认为可以这样理解: 它原本其实是并不存在的.就是说它并不是随着用户的操作而同时产生的. 这个文件