ArcGIS でサポートされている Oracle のデータ タイプ
データベースにテーブルを作成する、またはテーブルに列を追加すると、それらの列は特定のデータ タイプとして作成されます。データ タイプとは、有効な値、データで実行できる操作、およびその列のデータがデータベースに格納される方法を識別するための分類のことを指します。
ArcGIS からデータベース テーブルにアクセスすると、特定のデータ タイプを操作できます。カタログ ツリーの [Database Connections] ノードや ArcMap のクエリ レイヤからデータベース テーブルにアクセスする場合、ArcGIS はサポートされていないデータ タイプを除外します。データベース テーブルに直接アクセスする場合、サポートされていないデータ タイプは ArcGIS インタフェースには表示されず、ArcGIS からは編集できません。同様に、サポートされていないデータ タイプを含むテーブルを ArcGIS でコピーする場合、サポートされているデータ タイプのみがコピーされます。テーブルを別のデータベースやジオデータベースに貼り付けるときも、サポートされていないデータ タイプの列は対象外となります。
ArcGIS でフィーチャクラスまたはテーブルを作成したり、ArcGIS を使用して既存のテーブルまたはフィーチャクラスに列を追加したりするとき、フィールドに割り当てることのできる ArcGIS データ タイプは 12 種類あります。これらのタイプに対応しないデータベースのデータ タイプは、ArcGIS クライアントアプリケーションでは直接使用できません。
最初の列は ArcGIS データ タイプです。2 番目の列は、データベースに作成される Oracle のデータ タイプです。3 番目の列は、ArcGIS で表示するときに、ArcGIS データ タイプにマップされるその他の Oracle のデータ タイプ(存在する場合)を示しています。
ArcGIS データ タイプ |
作成された Oracle のデータ タイプ |
表示可能なその他の Oracle のデータ タイプ |
注意事項 |
---|---|---|---|
BLOB |
BLOB |
||
DATE |
DATE |
||
DOUBLE |
NUMBER(31,8) |
NUMBER(p,s) |
ArcGIS で指定した精度と縮尺が、データベースに作成されるデータ タイプの結果に影響を与える場合があります。詳細は、「ArcGIS フィールド データ タイプ」をご参照ください。 |
FLOAT |
NUMBER(31,8) |
NUMBER(p,s) |
ArcGIS で指定した精度と縮尺が、データベースに作成されるデータ タイプの結果に影響を与える場合があります。詳細は、「ArcGIS フィールド データ タイプ」をご参照ください。 |
GEOMETRY |
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 はスーパークラスです。ArcGIS for Desktop でフィーチャクラスを作成する場合は、常に ST_Geometry が使用されます。SQL を使用して空間列を作成する場合、実際に作成されるデータのサブタイプ(ST_Multilinestring や ST_Point など)は、指定したサブタイプに依存します。 ST_Geometry をデータベースで使用するには、インストールする必要があります。詳細については、「Oracle データベースへの ST_Geometry タイプの追加」をご参照ください。 |
|
GLOBAL ID |
CHAR or NCHAR (UUID LEN) |
ジオデータベースでのみサポートされています。 テーブルの作成に指定したコンフィグレーション キーワードの UNICODE_STRING パラメータが TRUE に設定されている場合、一意の ID フィールドは NCHAR として作成されます。 |
|
GUID |
CHAR or NCHAR (UUID LEN) |
テーブルの作成に指定したコンフィグレーション キーワードの UNICODE_STRING パラメータが TRUE に設定されている場合、一意識別子フィールドはジオデータベースでは NCHAR として作成されます。 |
|
LONG INTEGER |
NUMBER(38) |
NUMBER (n) |
n の値の範囲は 5 〜 10 です。ArcGIS for Desktop または ArcObjects で作成し、精度を 0 に設定した場合、データベースには NUMBER(38) が作成されます。それ以外の場合、指定した精度が使用されます。 |
OBJECT ID |
NUMBER(38) when created in an enterprise geodatabase NUMBER(38) with sequence and trigger when created in a database |
ArcGIS の ObjectID タイプは、テーブル(またはフィーチャクラス)に登録された RowID 列です。1 つのテーブルにつき、1 つだけ存在します。 |
|
RASTER |
BLOB, LONG RAW, SDO_GEORASTER, or ST_RASTER |
ラスタはジオデータベースのみでサポートされます。作成される Oracle データ タイプは、ラスタ カタログ、ラスタ データセット、またはモザイク データセットの作成時に使用される DBTUNE コンフィグレーション キーワードによって変わります。 |
|
SHORT INTEGER |
NUMBER(5) |
NUMBER(n) |
値 n は 1 〜 5 の範囲内ですが、short integer 列に格納できる値は -32,768 〜 32,767 の範囲に収まる値だけです。そのため、数値の精度を 5 に設定した場合でも、32,767 を超える数値または -32,768 未満の数値は、short integer 列に格納できません。 ArcGIS for Desktop で作成する場合、n は 5 になります。したがって、short integer を許容範囲内に収めることができます。 |
TEXT |
VARCHAR2、CLOB、NVARCHAR2、NCLOB |
データベースが Unicode エンコーディングを使用するように設定されていない場合、VARCHAR2 フィールドが作成されます。 テキスト フィールド サイズを 4,000 よりも大きく設定し、データベースが Unicode エンコーディングを使用するように設定されている場合、Oracle のデータタイプは CLOB になります。 データベースが Unicode エンコーディングを使用するように設定されている場合、フィールドは NVARCHAR2 として作成されます。これは、Oracle 内のジオデータベースの場合、デフォルトの設定です。 テキスト フィールド サイズを 2,000 よりも大きく設定し、データベースが Unicode エンコーディングを使用するように設定されている場合、Oracle のデータタイプは NCLOB になります。 |