すべての Oracle データベース テーブルのリスト
Oracle データベース内のすべてのテーブルの包括的なリストが必要ですか? SQL クエリを使用してこれを行う方法は次のとおりです:
最も簡単なアプローチは、DBA_TABLES
ビューを使用します。
<code class="language-sql">SELECT owner, table_name FROM dba_tables;</code>
これには、適切なデータベース権限が必要です。 必要な権限がない場合は、データ ディクショナリにアクセスするための SELECT ANY DICTIONARY
権限または SELECT_CATALOG_ROLE
ロールを付与する必要があります。
DBA_TABLES
へのアクセスが制限されている場合は、ALL_TABLES
を使用して、現在のユーザー アカウントがアクセスできるテーブルを表示します。
<code class="language-sql">SELECT owner, table_name FROM all_tables;</code>
ALL_TABLES
では、表示権限のあるテーブルのみが表示され、一部のデータベース テーブルが省略される可能性があることに注意してください。
ユーザー アカウントによって排他的に所有されるテーブルの場合、USER_TABLES
:
<code class="language-sql">SELECT table_name FROM user_tables;</code>
USER_TABLES
では、所有者が暗黙的にユーザー アカウントであるため、OWNER
列が省略されます。
TAB
や DICT
などの古いビューも存在しますが、テーブル情報を取得するには、DBA_TABLES
、ALL_TABLES
、USER_TABLES
が推奨される最新のビューです。
以上がOracle データベース内のすべてのテーブルのリストを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。