ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • ヘルプ
  • Sign Out
ArcGIS Desktop

ArcGIS Online

組織のマッピング プラットフォーム

ArcGIS Desktop

完全なプロ仕様の GIS

ArcGIS Enterprise

エンタープライズ GIS

ArcGIS Developers

位置情報利用アプリの開発ツール

ArcGIS Solutions

各種業界向けの無料のテンプレート マップおよびテンプレート アプリケーション

ArcGIS Marketplace

組織で使えるアプリとデータを取得

  • ドキュメント
  • サポート
Esri
  • サイン イン
user
  • マイ プロフィール
  • サイン アウト

ArcMap

  • ホーム
  • はじめに
  • マップ
  • 解析
  • データ管理
  • ツール
  • エクステンション

バージョン対応ビューを使用した SQL Server のバージョン対応登録データの読み取り

  • DEFAULT バージョンから読み取る
  • DEFAULT 以外のバージョンを読み取る

バージョン対応ビューに対して SQL SELECT ステートメントを実行することで、バージョン対応登録されたデータにアクセスできます。

DEFAULT バージョンから読み取る

DEFAULT バージョンに対して SQL ステートメントを実行する場合には、最新のステートを読み取るか、指定したステートを読み取るかを選択できます。

DEFAULT バージョンの最新のステートを読み取る

バージョン対応ビューは、DEFAULT バージョンの最新のステートに自動的にアクセスします。バージョン対応ビューに対して SELECT ステートメントを実行すると、その実行時点での DEFAULT バージョンのステートにアクセスします。他のユーザーが編集データを DEFAULT バージョンにコミットしている場合 (これによって、DEFAULT バージョンが参照しているステートが変更されている場合)、それ以降のクエリには最新のステートとその編集データが表示されます。

DEFAULT バージョンの特定のステートを読み取る

DEFAULT バージョンの特定のステートに対するクエリで、そのクエリの実行中にステートが変更されないようにするには、set_current_version ストアド プロシージャを実行します。このプロシージャは、指定されたバージョン名を検証して、該当するデータベースのステートを内部的に設定します。DEFAULT バージョンに対して set_current_version ストアド プロシージャを実行すると、DEFAULT バージョンに対するクエリは、そのストアド プロシージャを実行した時点で DEFAULT バージョンが参照していたステートを常に指すようになります。

set_current_version は SQL クライアントから直接実行できます。sde スキーマ ジオデータベースの場合、構文は次のとおりです。

EXEC sde.set_current_version '<version_name>'

dbo スキーマ ジオデータベースの場合、ストアド プロシージャの所有者は dbo です。そのため構文は次のようになります。

EXEC dbo.set_current_version '<version_name>'

必要に応じて、このストアド プロシージャをもう一度実行し、バージョン対応登録されたテーブルの最新のステートを返すように変更できます。

  1. アクセスするバージョン対応登録されたフィーチャクラスまたはテーブルに対して、バージョン対応ビューが存在することを確認します。

    ArcGIS 10.1 からは、バージョン対応ビューはデータをバージョン対応登録するときに作成されます。データが 10.1 より前にバージョン対応登録されていた場合に、バージョン対応ビューを作成するには、ArcMap の [カタログ] ツリーのデータセットを右クリックし、[管理] をクリックして [SQL アクセスを有効化] をクリックします。

  2. Transact SQL クエリ ウィンドウを開き、set_current_version ストアド プロシージャを実行して、バージョンを DEFAULT に設定します。
    EXEC sde.set_current_version 'DEFAULT'
    
  3. バージョン対応ビューに対して SELECT ステートメントを発行して、ジオデータベースからバージョン対応登録されたデータを読み取ります。

    この例では、バージョン対応ビューは sightings_ev です。

    SELECT id, species, reporter
    FROM sightings_ev
    WHERE reporter = 'chuck';
    

DEFAULT 以外のバージョンを読み取る

set_current_version ストアド プロシージャでは、DEFAULT 以外のバージョンに対してクエリを実行することもできます。このプロシージャは、指定されたバージョン名を検証して、該当するバージョンのステートを内部的に設定します。バージョンに対するクエリは、set_current_version ストアド プロシージャを実行した時点でそのバージョンが参照していたステートを常に指すようになります。

必要に応じてこのプロシージャを再度呼び出して別のバージョンに変更することもできます。また、ワークスペースが更新されるたびにアプリケーションから呼び出して、バージョン対応登録されたテーブルが参照しているステートを取得することもできます。

set_current_versionn ストアド プロシージャで DEFAULT 以外の特定のバージョンに対してクエリを実行する手順を次に示します。

  1. アクセスするバージョン対応登録されたフィーチャクラスまたはテーブルに対して、バージョン対応ビューが存在することを確認します。

    テーブル、フィーチャクラス、またはフィーチャ データセットをバージョン対応登録すると、バージョン対応ビューが作成されます。データが ArcGIS 10.1 より前にバージョン対応登録されている場合でも、データセットを右クリックし、[管理] をクリックして [SQL アクセスを有効化] をクリックすることで、バージョン対応ビューを作成できます。

  2. Transact SQL クエリ ウィンドウを開き、set_current_version ストアド プロシージャを実行して、クエリするバージョンを設定します。

    この例では、クエリ対象のバージョンとして field_inspections が設定されています。

    EXEC sde.set_current_version 'FIELD_INSPECTIONS'
    
  3. バージョン対応ビューに対して SELECT ステートメントを発行して、ジオデータベースからバージョン対応登録されたデータを読み取ります。

    この例では、バージョン対応ビューは code_ev です。

    SELECT owner, site_address, region
     FROM code_ev
     WHERE region = 'b';
    

DEFAULT バージョンの最新のステートに対するクエリ手順に戻す必要がある場合は、set_default プロシージャを実行します。

--For sde-schema geodatabases
EXEC sde.set_default;
--For dbo-schema geodatabases
EXEC dbo.set_default;
その後、バージョン対応ビューに対して SELECT ステートメントを実行すると、クエリが DEFAULT バージョンの最新のステートに対して実行されます。

関連トピック

  • バージョン対応ビューとは
  • SQL を使用して SQL Server でバージョン対応登録されたデータを編集

ArcGIS Desktop

  • ホーム
  • ドキュメント
  • サポート

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

Esri について

  • 会社概要
  • 採用情報
  • Esri ブログ
  • ユーザ カンファレンス
  • デベロッパ サミット
Esri
ご意見・ご感想をお寄せください。
Copyright © 2021 Esri. | プライバシー | リーガル