oracle中的用户名列表

时间:2016-05-05 14:09:24

标签: oracle database-administration

我需要获取所有用户及其表格和详细信息的列表。

例如:https://www.google.com/search?q=oracle+user&source=lnms&tbm=isch&sa=X&ved=0ahUKEwi-td2pjcPMAhXEFh4KHdMAAVcQ_AUIBygB&biw=1175&bih=621#tbm=isch&q=oracle+user++sql+developer&imgrc=Qvmfp57HchgwgM%3A

在左边的上面的屏幕中有红色符号(User),所以我需要用户名,关联表(在该用户下)和该表中的atrributes。这可能吗。适用于所有用户。

由于 阿迪

3 个答案:

答案 0 :(得分:1)

所有用户,所有表格,'和详细信息'

所以你真的想要所有用户吗?由于许多用户是系统用户 - 拥有数据库本身使用的对象的用户,因此SYS是最大的例子。你可能有几十个这样的帐户。我猜你不想要它们。

回收站中的所有表格,表格,物化视图的表格,您是否也想要这些?

和'细节'。您想要他们创建的日期,列,存储参数吗?你想要的越多,你的查询就越大,越丑。

所有这一切,你都指出了Oracle SQL Developer的截图。它包含数据建模功能。用它。将您真正想要的用户反向工程到数据模型中。然后使用它提供的数据字典报告为您提供所需的信息。

你必须首先找出你真正想要的东西。

Pick the users, and then the objects you want

我在这里谈论how to do the RE in the data modeler

答案 1 :(得分:0)

你可以从这开始:

select *
from dba_tables t
  inner join dba_tab_columns
    using(owner, table_name)

这将给出所有表和列,包含有关表空间,列类型等的一些信息,等等

答案 2 :(得分:0)

这显示除SYS和SYSTEM

之外的所有用户及其所有表
SELECT owner, table_name
  FROM All_All_Tables
 WHERE owner NOT IN ('SYS','SYSTEM')
 ORDER BY 1,2

在Oracle 10,11上运行