oracle查询数据库所有用户信息

Posted donfaquir

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle查询数据库所有用户信息相关的知识,希望对你有一定的参考价值。

  1. 看到网上说的查询用户的语句:
    SELECT * FROM dba_users;这句好像只能系统管理员才能成功执行,普通用户无法执行
    SELECT count(*) FROM all_users; , SELECT * FROM USER_USERS;普通用户和系统管理员均可执行
  2. 原打算删除创建的一个测试用户,发现这三个dba_users,all_users, user_users都是视图,不能删除,打开all_users视图,查看sql语句,发现他是基于两个表创建的,代码如下:
CREATE OR REPLACE FORCE VIEW "SYS"."ALL_USERS" ("USERNAME", "USER_ID", "CREATED") AS 
  select u.name, u.user#, u.ctime
from sys.user$ u, sys.ts$ dts, sys.ts$ tts
where u.datats# = dts.ts#
  and u.tempts# = tts.ts#
  and u.type# = 1;
COMMENT ON COLUMN "SYS"."ALL_USERS"."USERNAME" IS ‘Name of the user‘; 
COMMENT ON COLUMN "SYS"."ALL_USERS"."USER_ID" IS ‘ID number of the user‘;
COMMENT ON COLUMN "SYS"."ALL_USERS"."CREATED" IS ‘User creation date‘; 
COMMENT ON TABLE "SYS"."ALL_USERS"  IS ‘Information about all users of the database‘

用户表真正存在表user$ ,找到表,就使用管理员登录,删除想要删除的用户即可。



以上是关于oracle查询数据库所有用户信息的主要内容,如果未能解决你的问题,请参考以下文章

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

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

Oracle数据库中如何查询一个用户A下面所有的表的信息

查询oracle中所有用户信息(转)

oracle查询数据库所有用户信息

oracle查询一次返回3个表