データベースにテーブルを作成する、またはテーブルに列を追加するときに、列のデータ タイプを定義します。データ タイプによって次のことが決定します。
- 列に保存できる値
- その列のデータに対して使用できる操作
- 列のデータをデータベースに保存する方法
ArcGIS では、特定のデータ タイプを操作できます。[データベース接続]、クエリ レイヤー、または Web サービスからデータベース テーブルにアクセスする場合、ArcGIS はサポートされていないデータ タイプを除外します。ArcGIS にはサポートされていないデータ タイプは表示されないため、サポートされていないデータ タイプを ArcGIS から編集することはできません。同様に、ArcGIS を使用してサポートされていないデータ タイプを含むテーブルをデータベース間でコピーして貼り付ける場合、ArcGIS はサポートされているデータ タイプを使用する列のみを貼り付けます。
次のテーブルの最初の列は ArcGIS データ タイプです。2 番目の列は、ArcGIS が作成する Oracle のデータ タイプです。3 番目の列は、ArcGIS 以外で作成したテーブルを表示するときに、ArcGIS データ タイプにマップされるその他の Oracle のデータ タイプ (存在する場合) を示しています。最後の列には、必要に応じて追加情報が表示されています。
ArcGIS データ タイプ | 作成される Oracle のデータ タイプ | 表示可能なその他の Oracle データ タイプ | 備考 |
---|---|---|---|
BLOB | BLOB | ||
Date | timestamp | date | |
Double | number(38,8) | number(p,s) | ArcGIS で指定した精度と縮尺が、データベースに作成されるデータ タイプの結果に影響を与える場合があります。詳細については、「ArcGIS フィールド データ タイプ」をご参照ください。 |
Float | number(38,8) | number(p,s) | ArcGIS で指定した精度と縮尺が、データベースに作成されるデータ タイプの結果に影響を与える場合があります。詳細については、「ArcGIS フィールド データ タイプ」をご参照ください。 |
ジオメトリ | ST_Geometry, number(38), or SDO_Geometry | 作成される Oracle データ タイプは、フィーチャクラスを作成したときに指定したジオメトリ格納によって異なります。Compressed Binary または WKB (Well-Known Binary) (ジオデータベースのみ) の場合は number(38)、Oracle Spatial の場合は SDO_Geometry、Spatial Type の場合は ST_Geometry になります。 ST_Geometry をデータベース (ジオデータベースではない) で使用するには、インストールする必要があります。 | |
Global ID | char or nchar (UUID len) | ジオデータベースでのみサポートされています。 テーブルの作成に指定したコンフィグレーション キーワードの UNICODE_STRING パラメーターが TRUE に設定されている場合、一意識別子フィールドは nchar として作成されます。 | |
GUID | char or nchar (UUID len) | テーブルの作成に指定したコンフィグレーション キーワードの UNICODE_STRING パラメーターが TRUE に設定されている場合、一意識別子フィールドはジオデータベースでは nchar として作成されます。 | |
Long Integer | number(38) | number(n) | 値 n は 5 ~ 10 の範囲内です。ArcGIS Desktop または ArcObjects で作成し、精度を 0 に設定した場合、データベースには number(38) が作成されます。そうでない場合は、指定した精度が使用されます。 |
Object ID | エンタープライズ ジオデータベースに作成される number(38) 次の場合に作成される number(38) (シーケンスとトリガーを使用):
ArcGIS を使用して Oracle 12c データベースにフィーチャクラスまたはテーブルを作成する場合、または [増加 ID フィールドの追加 (Add Incrementing ID Field)] ジオプロセシング ツールを使用して、Oracle 12c データベースのテーブルに ID フィールドを追加する場合、ID として必ず number(38) が生成されます。 | ArcGIS の ObjectID タイプは、テーブル (またはフィーチャクラス) に登録された RowID 列です。1 つのテーブルにつき、1 つだけ存在します。 | |
ラスター | BLOB or number(38) | ラスターはジオデータベースのみでサポートされます。ラスター フィールドで使用されるデータ タイプは、モザイク データセットまたはラスター データセットの作成時に指定するコンフィグレーション キーワードによって変わります。 | |
Short Integer | number(5) | number(n) | 値 n は 1 ~ 5 の範囲内です。ただし、short integer 列に格納できる値は、-32,768 ~ 32,767 の範囲に収まる値だけです。そのため、数値の精度を 5 に設定した場合でも、32,767 を超える数値または -32,768 未満の数値は、short integer 列に格納できません。 ArcGIS Desktop で作成した場合、n = 5 です。したがって、short integer を許容範囲内に収めることができます。 |
テキスト | varchar2、CLOB、nvarchar2、NCLOB |
テキスト データ タイプ
ArcGIS を使用して作成したテーブルにテキスト フィールドを含める場合、データセットが Unicode エンコーディングを使用するように設定されていなければ、varchar2 データ タイプが使用されます。テキスト フィールド サイズを 4,000 よりも大きく設定し、データベースが Unicode エンコーディングを使用するように設定されていない場合、Oracle のデータタイプは CLOB になります。
データベースが Unicode エンコーディングを使用するように設定されている場合、テキスト フィールドは nvarchar2 として作成されます。これは、Oracle のジオデータベースの場合、デフォルトの設定です。テキスト フィールド サイズを 2,000 よりも大きく設定し、データベースが Unicode エンコーディングを使用するように設定されている場合、Oracle のデータタイプは NCLOB になります。
ジオメトリ データ タイプ
ArcGIS は、Esri ST_Geometry、Oracle SDO_Geometry、および Compressed Binary という Oracle の 3 種類のジオメトリ データ タイプでデータを作成および操作できます。Compressed Binary ジオメトリ格納は、ジオデータベースでのみ使用できます。
ST_Geometry
ST_Geometry データ タイプはユーザー定義データ タイプ (UDT) の SQL 3 Specification を実装しているため、ランドマークの場所、道路、土地区画といった空間データを格納できる列を作成することができます。これは、ジオデータベースおよびデータベースに対して、 ISO/OGC 準拠の SQL アクセスを提供します。このジオメトリ格納は、地理フィーチャを表すオブジェクト (ポイント、ライン、ポリゴン) の格納を提供することで、データベースの機能を拡張します。このジオメトリ格納は、データベースのリソースを効率よく使用し、レプリケーションやパーティションといったデータベースの機能との互換性を維持し、空間データへの素早いアクセスを可能にします。
詳細については、「Oracle の SDO_Geometry」をご参照ください。
SDO_Geometry
SDO_Geometry は、Oracle の拡張可能なオブジェクト リレーショナル タイプ システムを使用して実装されています。SDO_Geometry タイプは、Oracle から提供されていて、主要な 2 つのオプションがあります。
- Oracle Spatial は、Oracle Database Enterprise Edition のオプション機能です。Oracle Spatial は、SDO_Geometry タイプのほかに、追加の地理空間機能も提供します。
- Oracle Locator は、Oracle Spatial の機能のサブセットです。Oracle Locator は、Oracle Database Standard Edition および Enterprise Edition の標準機能として含まれています。特に、Oracle Spatial ジオメトリ タイプ (SDO_Geometry) と Oracle Spatial ジオメトリ タイプに対する SQL API を提供します。
ArcGIS は、空間データのオプションの格納方法として SDO_Geometry をサポートしています。具体的には、Oracle Spatial または Locator ジオメトリを使用して、データセットのフィーチャおよびラスターをエンタープライズ ジオデータベースまたは Oracle データベースに格納し、管理することができます。
SDO_Geometry の詳細については、Oracle のマニュアルをご参照ください。
Compressed Binary
Esri Compressed Binary 格納タイプは、バイナリ格納メカニズムを使用してフィーチャ ジオメトリを格納します。Compressed Binary フィーチャクラスは、ビジネス テーブル、フィーチャ テーブル、空間インデックス テーブルという 3 つのテーブルで構成されます。
クライアント アプリケーションはジオメトリを整合チェックした後、ジオメトリ データを圧縮してジオデータベースに送信します。ジオデータベース側では、データは Compressed Binary 形式でフィーチャ テーブル (F テーブル) に格納されます。クライアント側でジオメトリを圧縮すると、データベース サーバーの負荷が軽減され、ジオメトリの送信にかかる時間が短縮されます。データの格納に必要な領域を最大で 40% 削減することで、空間データの効率的な格納と取得が可能になります。
ビジネス テーブルには属性と空間列が含まれています。空間列は、フィーチャ テーブルと空間インデックス テーブルへのキーとなります。
ビジネス テーブルとフィーチャ テーブル間のリレーションシップは、空間列とフィーチャ ID (FID) 列で管理されます。ArcGIS によって管理されるこのキーは一意です。
ラスター データ タイプ
Oracle のジオデータベースにラスター データセットやモザイク データセットを作成するには、RASTERBLOB に設定された RASTER_STORAGE パラメーターを含むコンフィグレーション キーワードを使用する必要があります。