ジオデータベースのビューの概要

エンタープライズ ジオデータベースでは、次の 3 種類のビューを使用できます。

データベース ビュー

データベース ビューは、指定されたバージョン非対応の非空間テーブルからデータを選択するストアド クエリです。データベースまたはエンタープライズ ジオデータベースのテーブルに対して、ビューを定義できます。エンタープライズ ジオデータベースで使用する場合、データベース ビューは単一のバージョン非対応テーブルに対して定義するか、2 つのバージョン非対応テーブル間で定義できます。また、サブクエリを含むビューや、複数のデータベースにまたがるビューなど、より複雑なビューを作成することもできます。

差分テーブルの編集内容を確認するには、ビジネス テーブルにバージョン対応ビューを使用します。差分テーブルに格納されている編集内容は表示されません。差分テーブルの編集内容を確認するには、ビジネス テーブルにバージョン対応のビューを使用します。

データベース ビューの作成には、ArcGIS for Desktop または DBMS(データベース管理システム)のネイティブな SQL を使用できます。

ユーザがビューを作成するには、特定の権限が必要です。たとえば、Oracle または SQL Server データベースでは、CREATE VIEW 権限が必要です。一部のデータベース管理システムでは、自身が所有者でないフィーチャクラスまたはテーブルからビューを作成する場合、他のユーザにビューを参照する権限を割り当てることはできません。この場合は、元のテーブルの所有者から、他のユーザに権限を割り当てるための権限を付与してもらう必要があります。

空間ビュー

空間ビューは空間列を 1 つ含むデータベース ビューです。このビューを作成できるのは、ジオデータベースに登録されていない空間テーブルか、テーブルがジオデータベースに登録されている場合はバージョン非対応のフィーチャクラスのみです。

空間ビューを作成する理由には、「ビューとは」に示すデータベース ビューを使用する理由の他に、次のようなものがあります。

空間ビューの作成には、ArcGIS または SQL を使用できます。RowID または ObjectID 列は、空間列と同じテーブルに属している必要があります。これらが同じテーブルにない場合、RowID または ObjectID と Shape 列の間の関係が一意とならず、ArcGIS で検索やレンダリングを行う際に結果が不正確になる可能性があります。SQL を使用して空間ビューを作成する場合は、フィーチャクラスまたは空間テーブルから空間列と RowID または ObjectID 列をビューに含めます。

注意注意:

SQL またはその他の DBMS ツールでビューを作成する際には、ビューの妥当性について検討する必要があります。たとえば、指定された列が指定されたテーブルに実際に存在するかどうか、あるいはクエリの実行を高速化するインデックスが列に設定されているかどうかについて検討する必要があります。ArcGIS によって作成されたビューを後から変更する方法を選択した場合は、クエリの正確さと効率だけでなく、ArcGIS クライアントで使用することの妥当性についても、ユーザの責任となります。たとえば、1 対多のビューを作成するとフィーチャクラスの ObjectID が重複する場合があります。この場合、ObjectID の値は一意であると想定されているため、ArcMap や ArcCatalog などのアプリケーションで予想外の動作が発生することがあります。

バージョン対応ビュー

バージョン対応ビューには、SQL を使用してジオデータベースのテーブルまたはフィーチャクラスに特定のバージョンでアクセスしたり、これらを編集できるように、データベース ビュー、ストアド プロシージャ、トリガ、および関数が組み込まれています。

ArcGIS 10.1 からは、テーブルおよびフィーチャクラスをバージョン対応登録すると、それらのバージョン対応ビューが自動的に作成されます。すでにバージョン対応の既存データがある場合、ArcGIS for Desktop のカタログ ツリーでバージョン対応のテーブル、フィーチャクラス、フィーチャ データセットを右クリックして、[バージョン対応ビューの作成] をクリックすると、バージョン対応ビューを作成できます。

バージョン対応ビューは、バージョン対応登録された個々のテーブルまたはフィーチャクラスのみを操作します。WHERE 句を使用して複数のテーブルを結合したり、バージョン対応ビューに含める行や列を制限することはできません。

バージョン対応ビューの主な用途は、SQL を使用してバージョン対応登録されたデータを編集することです。ArcGIS クライアント アプリケーションを使用して、バージョン対応ビューから基になるテーブルやフィーチャクラスを編集することはできません。バージョン対応ビューの基になるテーブルやフィーチャクラスは、SQL を使用してジオデータベース データを編集するための ArcGIS の要件を満たす必要があります。詳細については、「SQL で編集可能なデータ タイプ」をご参照ください。

関連トピック

5/10/2014