如何在sql中列出用户创建的表名?

时间:2012-09-06 14:19:10

标签: sql oracle11g

我在sql 11g中创建了20个表并丢失了它们的记录。有没有办法列出我创建的表名。 SELECT table_name FROM user_tables不是解决方案。

4 个答案:

答案 0 :(得分:2)

首先,以 sys 身份登录,然后才能查看整个数据库中的表。

其次,使用 sys

运行此查询
SELECT owner, table_name FROM dba_tables WHERE owner='HR';

这应该显示HR schema拥有的所有表。请记住为所有者(HR)使用大写字母,否则您将收到错误。

希望这有帮助。

答案 1 :(得分:1)

Oracle Database Reference可以帮助您。

SELECT TABLE_NAME FROM USER_ALL_TABLES

答案 2 :(得分:1)

好吧,如果user_all_tables不是您想要的结果,您必须通过以下方式依赖dba_tables:

SELECT owner, table_name
  FROM dba_tables

但是为此你需要更多的privs而不是user_tables

答案 3 :(得分:1)

解决此问题的最佳方法是考虑名为ALL_ALL_TABLES的属性 的 LAST_ANALYZED 它给出了最近分析表格的日期。

因此,您可以在DATE Functions的帮助下轻松查询数据库。