6.1 オブジェクト・ビュー使用の利点
ビューが仮想表であることと同様、オブジェクト・ビューは仮想的なオブジェクト表です。ビューの各行はオブジェクトであるため、メソッドのコール、ドット表記法を使用したオブジェクト属性へのアクセスおよびオブジェクトを指すREF
の作成が可能です。
オブジェクト指向アプリケーションは、既存の表を別の物理構造に変換せずに実行できます。このためには、オブジェクト・ビューを使用して、オブジェクト指向アプリケーションのプロトタイプを作成したり、オブジェクト指向アプリケーションに切り替えることができます。ビューの中のデータは、リレーショナル表から取り出すことができ、表がオブジェクト表として定義されているかのようにアクセスできるためです。
オブジェクト・ビューは、リレーショナル・ビューのように使用し、目的のデータのみ画面上に表示できます。たとえば、給料など機密データを除いて、従業員表の特定のデータを表示するオブジェクト・ビューが作成できます。
オブジェクト・ビューの使用によって、パフォーマンスが向上します。オブジェクト・ビューの1行を構成するリレーショナル・データは、1単位としてネットワークを横断するため、ラウンドトリップが大幅に削減されます。
リレーショナル・データをクライアント側のオブジェクト・キャッシュにフェッチし、C構造体、C++クラスまたはJavaクラスにマップできるため、3GLアプリケーションで固有のクラスのように操作できます。また、複雑なオブジェクト検索のようなオブジェクト指向機能をリレーショナル・データとともに使用することもできます。
-
リレーショナル・データからオブジェクトを合成することによって、新しい方法でデータを問い合せることができます。複数の表との複雑な結合を記述するかわりに、オブジェクトの参照解除を利用することで複数の表からデータを表示できます。
-
オブジェクト・ビューからオブジェクト・データを確保し、クライアント側のオブジェクト・キャッシュ内でそのデータを使用できます。オブジェクト・キャッシュ上に確保された、これらの合成されたオブジェクトを、専用のオブジェクト検索メカニズムにより取り出すことで、ネットワーク通信量を削減できます。
-
ビュー内部にオブジェクト・モデルを作成しながら、モデル開発が継続できるという、優れた柔軟性が得られます。オブジェクト型を変更する必要がある場合、無効なビューを新しい定義に簡単に置換できます。
-
ビューの中のオブジェクトを使用することで、基礎となる記憶域メカニズムの特性が制限されることはありません。同様に、現行のテクノロジによって制限されることもありません。たとえば、パラレル化およびパーティション化されたリレーショナル表からオブジェクトを合成することもできます。
-
基礎となる同じデータから異なる複合データ・モデルを作成できます。
関連項目:
-
SQL構文および使用方法の詳細は、『Oracle Database SQL言語リファレンス』を参照してください。
-
PL/SQLの機能の詳細は、『Oracle Database PL/SQL言語リファレンス』を参照してください。
-
Javaの詳細は、『Oracle Database Java開発者ガイド』を参照してください。
-
これらの機能の詳細は、『Oracle Call Interfaceプログラマーズ・ガイド』を参照してください。
-