我在sql 11g中创建了20个表并丢失了它们的记录。有没有办法列出我创建的表名。
SELECT table_name FROM user_tables
不是解决方案。
答案 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的帮助下轻松查询数据库。