データベースと ArcGIS

ArcGIS Pro から、サポートされているデータベース内の空間データまたは非空間データに接続して、次のことを実行できます。

データベースを拡張して、ネットワーク、トポロジ、アタッチメント、アーカイブなどの機能を追加する必要があり、次のいずれかのタイプのデータベースを使用している場合は、データベースでジオデータベースを有効化できます。

ArcGIS が直接サポートしていないデータベース内の非空間データにアクセスする場合は、「OLE DB 接続の操作」をご参照ください。

データのビジュアル化

ArcGIS からデータベースに接続すると、データベース接続からマップにテーブルをドラッグすることでマップ内に空間データを表示できます。必要な場合は、マップに追加する空間テーブルに対して一意の識別子、空間参照、およびジオメトリ タイプを定義します。

ほとんどのサポートされているデータベースから空間テーブル (フィーチャクラス) をマップにドラッグすると、クエリ レイヤーが作成されます。クエリ レイヤー定義は、サポートされているデータ タイプのすべての列を含んでいます。ArcGIS は、テーブルの最初の行を使用して、ジオメトリ タイプ (ポイント、マルチポイント、ライン、またはポリゴン)、空間参照、および次元 (つまり、2D または 3D) を決定します。これらのプロパティを使用しない場合 (たとえば、テーブル内の 3 次元レコードを表示するが、最初のレコードが 2 次元である場合)、クエリ レイヤー定義を変更できます。

サポートされているデータ タイプ

ArcGIS でデータを使用するには、使用しているデータベース テーブルのデータ タイプを、ArcGIS がサポートするデータ タイプにマッピングする必要があります。使用しているテーブルに、ArcGIS がサポートしていないデータ タイプが含まれている場合、ArcGIS は未サポートの列を表示しません。ArcGIS を使用してデータベース間またはデータベースとジオデータベース間でテーブルを移動する場合、サポートされていないデータ タイプは、移動先のデータベースには加えられません。各データベース管理システムでサポートされているデータ タイプのリストについては、「ArcGIS でサポートされている DBMS のデータ タイプ」をご参照ください。

データの分析

多くのジオプロセシング ツールを使用して、データベースのデータを分析できます。ツールが既存のテーブルにレコードを追加する場合、テーブルには、データベースによって維持されている一意の識別子が含まれている必要があるのでご注意ください。

大規模なフィーチャクラスに対して空間解析を行う場合は、クエリ レイヤー インターフェイスでデータベースのネイティブ SQL 関数を使用するクエリを記述するほうが効率的です。このようなクエリはデータベースで処理されます。

データのフィルタリング

クエリ レイヤー インターフェイスでデータベース SQL 関数を記述すると、マップに返されるデータをフィルタリングすることができます。

フィルターをマップまたはプロジェクトの外部で維持させるには、テーブルに関するビューをデータベース内に作成します。Python スクリプトで [データベース ビューの作成 (Create Database View)] ジオプロセシング ツールを実行してビューを作成するか、SQL を使用してビューをデータベース内に直接定義することができます。

データ管理

ArcGIS では、データベースのデータを管理するためのツールが多数用意されています。

データベース テーブルの権限の設定

テーブル所有者は、[権限] ダイアログ ボックスまたは [権限の変更 (Change Privileges)] ジオプロセシング ツールを使用して、他のデータベース ユーザーまたはロールに権限を付与したり、権限を取り消したりすることができます。手順については、「データセット権限の付与と取り消し」をご参照ください。

インデックスと統計情報の管理

[インデックスの再構築 (Rebuild Indexes)] ツールを使用してインデックスを再作成できます。また、[データセットの分析 (Analyze Datasets)] ツールを使用して、データベース内に保持しているテーブルのデータベース統計情報を更新できます。

SAP HANA は、ユーザーが作成したインデックスを保持しないため、SAP HANA のテーブルでは [インデックスの再構築 (Rebuild Indexes)] を実行しません。

データベース テーブルのスキーマの変更

[テーブル プロパティ] または [フィーチャクラス プロパティ] ダイアログ ボックスの [フィールド] タブから、データベース内で所有しているテーブルのフィールドを追加または削除できます。

テーブル名の変更

データベース管理システムが許可している場合、既存のデータベース テーブルの名前を変更できます。

データの追加

ArcGIS のツールを使用して、テーブルを作成し、他のデータ ソースのデータをデータベースに読み込むことができます。ArcGIS を使用してテーブルを作成し、データを読み込むためのオプションには、次のようなものがあります。

*データベースによって維持される一意の識別子を含まないテーブルには使用できません。

データベースにテーブルまたはフィーチャクラスを作成するには、データベース オブジェクトを作成する権限を持つユーザーとしてデータベースに接続する必要があります。データベース管理者は、SQL を使用してユーザーを作成し、必要な権限を付与するか、[データベース ユーザーの作成 (Create Database User)] ジオプロセシング ツールを実行して、ツールがサポートするデータベースのデータベース オブジェクトを作成するための十分な権限を持つユーザーを作成することができます。

データの公開

スタンドアロンまたはフェデレートされた ArcGIS GIS Server サイトを使用している場合は、データベース データを含むマップを作成したら、他のユーザーが Web 経由でそのマップにアクセスできるように、マップ イメージ レイヤーを公開することができます。GIS Server サイトが ArcGIS Enterprise ポータルとフェデレートされている場合、マップ イメージ レイヤー アイテムはポータルに追加されます。

他のユーザーがデータを編集できるようにするには、Web フィーチャ レイヤーを公開します

データの編集

ほとんどのサポートされているデータベース* には ArcGIS Pro から接続し、データを編集することはできません。データベース データを編集するには、データを公開する必要があります。

GIS Server サイトが ArcGIS Enterprise ポータルとフェデレートされている場合は、ソース データを参照する Web フィーチャ レイヤーを公開します。これにより、データを編集する必要があるメンバーを含むグループと共有可能なフィーチャ レイヤー アイテムをポータル内に作成できます。この Web フィーチャ レイヤーを介して許可する編集のレベルを設定します。

スタンドアロンの GIS Server サイトがある場合は、フィーチャ機能を有効化した状態でマップ サービスを公開し、そのサービスに対する編集を有効化して、ユーザーがデータを編集できるようにアクセス権を付与します。

*例外は SQLite データベースと OGC GeoPackage ファイルです。これらのファイルからマップにフィーチャクラスとテーブルを追加し、データを直接編集できます。

ジオデータベース機能の有効化

ある時点で、トポロジ、ネットワーク、バージョン編集など、データベースにジオデータベース機能が必要になる場合があります。ジオデータベース管理者ユーザーを作成し、そのユーザーでデータベースに接続すると、それらのデータベース内でサポートされているジオデータベースを有効化できます。有効化すると、ジオデータベースを使用するのに必要なシステム テーブル、タイプ、プロシージャ、関数が作成されます。

データベースでジオデータベースを有効化したら、ArcGIS から追加した新しいテーブルまたはフィーチャクラスは、自動的にジオデータベースに登録されます。また、既存のデータベース テーブルをジオデータベースに登録したり、未登録のまま ArcGIS からアクセスしたりできます。