ビューは、1つ以上の表または他のビュー内のデータをカスタマイズして表示したものです。したがって、ビューはストアド・クエリーと考えることができます。ビューは実際にはデータを格納しませんが、かわりに表に基づいてデータを導出します。これらの表はビューの実表と呼ばれます。
表同様、ビューも、いくつかの制限を付けて、問合せ、更新、挿入および削除できます。ビューに対して実行するすべての操作は、ビューの実表に実際に影響します。ビューでは、事前決定されている表の行および列のセットへのアクセスを制限することで、セキュリティ・レベルを追加できます。データの複雑さを表に出さずに、複雑な問合せを格納することもできます。
SYS
スキーマには多くの重要なビューがあります。静的データ・ディクショナリ・ビューおよび動的パフォーマンス・ビューの2つのタイプがあります。SYS
スキーマ内のビューの詳細は、『Oracle Databaseリファレンス』を参照してください。
静的データ・ディクショナリ・ビュー
データ・ディクショナリ・ビューは、データ・ディクショナリが変更される場合のみ変更され、変更の頻度が低いため静的ビューと呼ばれます。データ・ディクショナリが変更される例には、新規の表を作成する場合またはユーザーに権限を付与する場合が含まれます。
多くのデータ・ディクショナリ表には、対応するビューが3種類あります。
DBA_
ビューは、データベース全体に関連する情報をすべて表示します。DBA_
ビューは、管理者のみが使用するように設計されています。
DBA_
ビューの例はDBA_TABLESPACES
で、データベースの各表領域に1行ずつ含まれます。
ALL_
ビューには、現在のユーザーが権限またはロールを介してオブジェクトへのアクセス権を持っている場合、現在のユーザーのスキーマからの情報およびその他のスキーマにおけるオブジェクトからの情報を含む、現在のユーザーに対するアクセス可能なすべての情報が表示されます。
ALL_
ビューの例は、ALL_TABLES
で、ユーザーがオブジェクト権限を持つすべての表に1行ずつ含まれます。
USER_
ビューには、カレント・ユーザーのスキーマの情報がすべて表示されます。これらのビューに問い合せるには、特別な権限は必要ありません。
USER_
ビューの例は、USER_TABLES
で、ユーザーが所有するすべての表に1行ずつ含まれます。
DBA_
ビュー、ALL_
ビューおよびUSER_
ビューの列は通常ほぼ同一です。通常、USER_
ビューにはOWNER
列がありません。
動的パフォーマンス・ビュー