-1

SQL 11gで20個のテーブルを作成し、それらの記録を失いました。作成したテーブル名を一覧表示する方法はありますか? SELECT table_name FROM user_tables解決策ではありません。

4

4 に答える 4

2

まず、データベース全体のテーブルを表示する前に、 sysとしてログオンします。

次に、sysを使用してこのクエリを実行します。

SELECT owner, table_name FROM dba_tables WHERE owner='HR';

が所有するすべてのテーブルが表示されますHR schema。所有者には大文字を使用することを忘れないでください(HR)。そうしないと、エラーが発生します。

お役に立てれば。

于 2014-12-22T07:04:53.167 に答える
1

user_all_tables が希望の結果でない場合は、次の方法で dba_tables に依存する必要があります。

SELECT owner, table_name
  FROM dba_tables

しかし、これには明らかにuser_tablesよりも多くの特権が必要です

于 2012-09-06T15:20:07.450 に答える
1

Oracle Databaseリファレンスが役に立ちます。

SELECT TABLE_NAME FROM USER_ALL_TABLES
于 2012-09-06T14:30:19.967 に答える
1

この問題を解決する最善の方法は、LAST_ANALYZED という名前の ALL_ALL_TABLESの属性を考慮することです 。これにより、テーブルが最後に分析された日付が得られます。

したがって、DATE 関数を使用してデータベースを簡単にクエリできます。

于 2012-09-06T17:24:04.860 に答える