首页 > 解决方案 > 如何查看我在oracle 11g 中创建的所有表?

问题描述

在 Oracle 11g 中,如何从 user_tables 中提取我创建的表(不显示默认情况下存在的 100 个表)?

我编写了以下查询来获取所有用户表的列表,

SELECT table_name FROM user_tables;

但是,这给了我一个很长的表格列表,这些表格与我无关。我只想要一个由我手动创建的表列表。我知道到目前为止,我在数据库中只创建了 4-5 个表。

标签: sqloracle

解决方案


我猜你不是唯一一个在数据库中使用用户/模式的人。您可以使用 user_objects 视图运行查询。像下面的查询一样按 CREATED 降序对其进行排序。

 select *
   from user_objects
  where object_type = 'TABLE'
    --and created BETWEEN :P_DATE1 AND :P_DATE2 
  order by created desc

如果您要再次创建另一个表,请在表名中添加一些提示/标记。它可能是您的姓名首字母或前缀,让您知道这是您的桌子。

示例表名:ABC_TABLE1

然后您可以使用以下查询来获取您创建的表。

SELECT *
  FROM user_tables
 WHERE table_name LIKE 'ABC%';

推荐阅读