バージョン非対応データ操作のクイック ツアー
ArcSDE ジオデータベースに格納されたデータのバージョン非対応の編集は、標準のデータベース トランザクションの実行に相当します。トランザクションは、ArcMap 編集セッションのスコープ内で実行され、編集セッションを開始して、フィーチャの追加、削除、移動、属性の更新といった、必要な操作を実行します。編集を保存すると、実行した編集が単一のトランザクションとしてジオデータベースにコミットされます。変更内容をジオデータベースにコミットしたくない場合は、編集セッションを保存せずに終了する必要があります。保存しなければ、編集セッションの開始後または前回の保存後に行った編集がすべてロールバックされます。トランザクションはそれぞれ必要な数の操作で構成できますが、それらが単一の編集セッションに属していることが前提となります。
ArcMap 編集セッションでバージョン非対応のデータを編集する際には、データ ソースを直接編集します。バージョン対応のデータに対する編集セッションとは異なり、バージョン非対応の編集セッションでは、変更内容は直接ベース テーブルに反映されます。これにより、バージョニングをサポートするためにシステム テーブルなどを管理するオーバーヘッドをなくし、また、サードパーティ アプリケーションも容易にデータの参照と編集を行うことが可能になります。ただし、DBMS の標準のトランザクションを使用してデータを編集するため、個々の編集を元に戻したりやり直す操作を行えないという制限があります。編集を元に戻すには、編集内容を保存せずに編集セッションを終了して、すべての編集内容を元に戻すしかありません。
バージョン非対応の編集を行えるのは、バージョン非対応のシンプル データ(ポイント、ライン、ポリゴン、アノテーション、リレーションシップ)のみです。トポロジまたはジオメトリック ネットワークのフィーチャクラスを編集することはできません。これは、ネットワークまたはトポロジのフィーチャを編集する際、ネットワークまたはトポロジのすべてのフィーチャがロックされないためです。他のユーザがネットワークまたはトポロジの他の部分を編集できるので、競合が発生するおそれがあります。
ArcSDE ジオデータベースでバージョン非対応のデータを編集する際には、ロック、分離レベル、制約、トリガといった、データの整合性を維持するための DBMS の振舞いを考慮に入れる必要があります。詳細については、以下のトピックをご参照ください。
バージョン非対応の編集は、シングルユーザによる編集を前提にしています。複数のユーザが同じデータセットを編集場合には、バージョン対応の編集をお勧めします。バージョン非対応のデータを複数のユーザが編集するには、データベースがデータ整合性を維持するために使用するロック、分離レベル、DBMS の制約およびトリガなどを考慮する必要があります。
ArcMap 編集セッションでバージョン非対応のデータを編集するには、以下を実行する必要があります。
- データがジオデータベースに登録されていることを確認します。
ArcGIS Desktop で作成されたデータセットはすべて自動的にジオデータベースに登録されます。したがって、この点に配慮しなければならないのは、ArcSDE 管理コマンドの sdetable コマンドを使用してテーブルを作成した場合など、ArcGIS Desktop を使用せずにデータを作成した場合です。データをジオデータベースに登録する方法については、「ジオデータベースへのレイヤの登録」をご参照ください。
- データがバージョン対応レイヤとして登録されていないことを確認します。
データセットがジオデータベースに作成される際には、バージョン対応レイヤとして登録されません。バージョン対応レイヤとしてすでに登録されている既存のデータセットである場合は、登録を解除する必要があります。
バージョン対応登録を解除する方法については、「データのバージョン対応登録」および「データのバージョン対応登録解除」をご参照ください。メモ:バージョン対応の登録を解除すると、データセットに対して実行された編集のうち、リコンサイル/ポスト処理によってベース テーブルへ反映されていない編集は失われます。このため、データセットのバージョン対応登録を解除する前に、ベース テーブルに反映されていない編集が含まれていないことを確認してください。
- ArcMap 編集セッションをバージョン非対応の編集を実行するように設定します。
具体的な設定方法については、「バージョン非対応編集を実行するための ArcMap 編集セッションの設定」をご参照ください。