ArcGIS でサポートされている DBMS のデータ タイプ
データベースにテーブルを作成する、またはテーブルに列を追加すると、それらの列は特定のデータ タイプとして作成されます。データ タイプとは、有効な値、データで実行できる操作、およびその列のデータがデータベースに格納される方法を識別するための分類のことを指します。
ArcGIS からデータベース テーブルにアクセスすると、特定のデータ タイプを操作できます。カタログ ツリーの [Database Connections] ノードや ArcMap のクエリ レイヤからデータベース テーブルにアクセスする場合、ArcGIS はサポートされていないデータ タイプを除外します。データベース テーブルに直接アクセスする場合、サポートされていないデータ タイプは ArcGIS インタフェースには表示されず、ArcGIS からは編集できません。同様に、サポートされていないデータ タイプを含むテーブルを ArcGIS でコピーする場合、サポートされているデータ タイプのみがコピーされます。テーブルを別のデータベースやジオデータベースに貼り付けるときも、サポートされていないデータ タイプの列は対象外となります。
次の表は、データベースのデータ タイプと ArcGIS のデータ タイプの対応関係を、サポートされる DBMS ごとに示したものです。1 番目の列には、ArcGIS に表示されるデータ タイプを示します。2 番目の列には、1 番目の列に示すデータ タイプを使用して ArcGIS でテーブルまたはフィーチャクラスを作成したときにデータベースに作成されるデータ タイプを示します。3 番目の列には、ArcGIS の外部でテーブルを作成した場合に、1 番目の列に示す ArcGIS のデータ タイプにマッピングされるデータベースのその他のデータ タイプを示します。
IBM DB2
ArcGIS data types |
作成される DB2 のデータ タイプ | 表示可能なその他の DB2 のデータ タイプ |
注意事項 |
---|---|---|---|
BLOB |
BLOB | ||
DATE |
TIMESTAMP | ||
DOUBLE |
DECIMAL(p,s) | ArcGIS で指定した精度と縮尺が、データベースに作成されるデータ タイプの結果に影響を与える場合があります。詳細は、「ArcGIS フィールド データ タイプ」をご参照ください。 |
|
FLOAT |
DECIMAL(p,s) | ArcGIS で指定した精度と縮尺が、データベースに作成されるデータ タイプの結果に影響を与える場合があります。詳細は、「ArcGIS フィールド データ タイプ」をご参照ください。 |
|
GEOMETRY |
ST_GEOMETRY | ST_Geometry はスーパークラスです。実際に作成されるデータ サブタイプ(ST_Multilinestring、ST_Point など)は、作成するフィーチャクラスのタイプがポリゴン、ライン、ポイント、マルチポイント、マルチパッチのどれであるかによって異なります。 |
|
GLOBAL ID | CHAR(38) | ジオデータベースでのみサポートされています。 | |
GUID |
CHAR(UUID LEN) | ||
LONG INTEGER |
INTEGER | ||
OBJECT ID |
エンタープライズ ジオデータベースに作成される CHARACTER(38) データベースに作成される、IDENTITY プロパティを使用する INTEGER | ArcGIS の ObjectID タイプは、テーブル(またはフィーチャクラス)に登録された RowID 列です。1 つのテーブルにつき、1 つだけ存在します。 |
|
RASTER |
BLOB | ジオデータベースでのみサポートされています。 |
|
SHORT INTEGER |
SMALLINT | ||
TEXT |
VARCHAR | CHAR |
Informix
ArcGIS data types |
作成された Informix のデータ タイプ | 表示可能なその他の Informix のデータ タイプ |
注意事項 |
---|---|---|---|
BLOB |
BLOB | ||
DATE |
DATETIME | ||
DOUBLE |
DECIMAL(31,8) | ArcGIS で指定した精度と縮尺が、データベースに作成されるデータ タイプの結果に影響を与える場合があります。詳細は、「ArcGIS フィールド データ タイプ」をご参照ください。 |
|
FLOAT |
DECIMAL(31,8) | ArcGIS で指定した精度と縮尺が、データベースに作成されるデータ タイプの結果に影響を与える場合があります。詳細は、「ArcGIS フィールド データ タイプ」をご参照ください。 |
|
GEOMETRY |
ST_GEOMETRY | ST_Geometry はスーパークラスです。実際に作成されるデータ サブタイプ(ST_Multilinestring、ST_Point など)は、作成するフィーチャクラスのタイプがポリゴン、ライン、ポイント、マルチポイント、マルチパッチのどれであるかによって異なります。 |
|
GLOBAL ID | CHAR(38) | ジオデータベースでのみサポートされています。 | |
GUID |
CHAR(UUID LEN) | ||
LONG INTEGER |
INTEGER | ||
OBJECT ID |
エンタープライズ ジオデータベースに作成される CHARACTER(38) データベースに作成される SERIAL | ArcGIS の ObjectID タイプは、テーブル(またはフィーチャクラス)に登録された RowID 列です。1 つのテーブルにつき、1 つだけ存在します。 |
|
RASTER |
BLOB | ジオデータベースでのみサポートされています。 |
|
SHORT INTEGER |
SMALLINT | ||
TEXT |
VARCHAR | CHAR |
Microsoft SQL Server
ArcGIS data types |
作成された SQL Server のデータ タイプ | 表示可能なその他の SQL Server のデータ タイプ |
注意事項 |
---|---|---|---|
BLOB |
VARBINARY(MAX) | BINARY、IMAGE、TIMESTAMP、VARBINARY(n) |
|
DATE |
DATETIME2(7) | DATETIME2(n)、DATETIME、SMALLDATETIME |
|
DOUBLE |
NUMERIC(p,s) | DECIMAL、FLOAT、MONEY、SMALLMONEY |
ArcGIS で指定した精度と縮尺が、データベースに作成されるデータ タイプの結果に影響を与える場合があります。詳細は、「ArcGIS フィールド データ タイプ」をご参照ください。 |
FLOAT |
NUMERIC(p,s) | REAL |
ArcGIS で指定した精度と縮尺が、データベースに作成されるデータ タイプの結果に影響を与える場合があります。詳細は、「ArcGIS フィールド データ タイプ」をご参照ください。 |
GEOMETRY |
INT, GEOMETRY, GEOGRAPHY | エンタープライズ ジオデータベースでは、作成される SQL Server のデータ タイプは、フィーチャクラスの作成時に使用された DBTUNE コンフィグレーション キーワードの GEOMETRY_STORAGE パラメータの設定によって変わります。SDEBINARY = INT、GEOMETRY = GEOMETRY 列、GEOGRAPHY = GEOGRAPHY 列。 デスクトップおよびワークグループ ジオデータベースでは、常に GEOMETRY タイプが使用されます。 フィーチャクラスの作成時に、データベースで GEOMETRY または GEOGRAPHY のどちらを使用するかを指定します。 |
|
GLOBAL ID | UNIQUEIDENTIFIER | ジオデータベースでのみサポートされています。 | |
GUID |
UNIQUEIDENTIFIER | ||
LONG INTEGER |
INT | ||
RASTER |
INT, ST_RASTER |
ラスタ データ タイプは、ジオデータベースのみでサポートされます。 デスクトップおよびワークグループ ジオデータベースでは、ラスタ タイプは常に INT データ タイプとして作成されます。 エンタープライズ ジオデータベースでは、作成される SQL Server データ タイプは、ラスタ列の作成時に使用される DBTUNE コンフィグレーション キーワードによって異なります。このキーワードの RASTER_STORAGE パラメータが BINARY に設定された場合は INT 列が作成され、ST_RASTER に設定された場合は ST_Raster 列が作成されます。 ST_Raster を使用する場合は、別途、エンタープライズ ジオデータベースに ST_Raster を構成する必要があります。手順については、「SQL Server での ST_Raster タイプのインストール」をご参照ください。 |
|
OBJECT ID |
INT(4) when created in an enterprise geodatabase INTEGER with IDENTITY property when created in a database | ArcGIS の ObjectID タイプは、テーブル(またはフィーチャクラス)に登録された RowID 列です。1 つのテーブルにつき、1 つだけ存在します。 |
|
SHORT INTEGER |
SMALLINT | BIT、TINYINT |
|
TEXT |
VARCHAR, NVARCHAR, VARCHAR(MAX), NVARCHAR(MAX) | CHAR、NCHAR |
SQL Server データベースで VARCHAR または VARCHAR(MAX) フィールドを作成する場合、ArcGIS で表示するときには ArcGIS TEXT データ タイプにマップされます。ArcGIS から SQL Server データベースに TEXT フィールドを作成する場合、NVARCHAR または NVARCHAR(MAX) のいずれかが必ず使用されます。 エンタープライズ ジオデータベースでは、DBTUNE UNICODE_STORAGE パラメータが FALSE に設定され、テキスト フィールドが 7,999 文字以下の場合、VARCHAR が使用されます。 DBTUNE UNICODE_STORAGE パラメータが TRUE に設定され、テキスト フィールドが 3,999 文字の場合、NVARCHAR が使用されます。 DBTUNE UNICODE_STORAGE パラメータが FALSE に設定され、テキスト フィールドが 8,000 文字以上の場合、VARCHAR(MAX) が使用されます。 DBTUNE UNICODE_STORAGE パラメータが TRUE に設定され、テキスト フィールドが 4,000 文字以上の場合、NVARCHAR(MAX) が使用されます。 |
Netezza
ArcGIS データ タイプ |
作成される Netezza のデータ タイプ |
表示可能なその他の Netezza のデータ タイプ |
注意事項 |
---|---|---|---|
BLOB |
サポートなし |
||
DATE |
TIMESTAMP |
DATE、TIME、TIME WITH TIME ZONE |
|
DOUBLE |
NUMERIC(38,8) |
BIGINT(別名 int8)、NUMERIC(p,s)、FLOAT(p)、REAL、DOUBLE PRECISION |
ArcGIS で指定した精度と縮尺が、データベースに作成されるデータ タイプの結果に影響を与える場合があります。 |
FLOAT |
FLOAT(p) |
ArcGIS で指定した精度と縮尺が、データベースに作成されるデータ タイプの結果に影響を与える場合があります。 |
|
GEOMETRY |
VARCHAR(n) ST_GEOMETRY |
Netezza Spatial Package を使用する場合、VARCHAR フィールドを作成し、ArcGIS が空間列として認識できるようにするために、そのフィールド(またはフィールドのエイリアス)に「shape」という名前を付ける必要があります。 Netezza Spatial Esri Package を使用する場合、ST_GEOMETRY フィールドを作成します。ST_GEOMETRY フィールドを使用する場合は、そのフィールド(またはフィールドのエイリアス)に「shape」という名前を付ける必要はありません。 |
|
GUID |
CHAR(38) |
||
LONG INTEGER |
INTEGER(別名 int または int4) |
||
OBJECTID |
INTEGER(別名 int または int4) |
||
SHORT INTEGER |
SMALLINT(別名 int2) |
||
TEXT |
NVARCHAR(50) |
CHAR(n)、NCHAR(n)、VARCHAR(n) |
データベースが Unicode エンコーディングを使用するように設定されている場合、NVARCHAR が作成されます。データベースが Unicode エンコーディングを使用するように設定されていない場合、VARCHAR が作成されます。 |
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 になります。 |
PostgreSQL
ArcGIS データ タイプ |
作成された PostgreSQL のデータ タイプ |
表示可能なその他の PostgreSQL のデータ タイプ |
注意事項 |
---|---|---|---|
BLOB |
BYTEA |
||
DATE |
TIMESTAMP WITHOUT ZONE |
TIMESTAMP |
|
DOUBLE |
NUMERIC(p) |
BIG SERIAL、DOUBLE PRECISION |
ArcGIS で指定した精度と縮尺が、データベースに作成されるデータ タイプの結果に影響を与える場合があります。詳細は、「ArcGIS フィールド データ タイプ」をご参照ください。 |
FLOAT |
NUMERIC(p) |
ArcGIS で指定した精度と縮尺が、データベースに作成されるデータ タイプの結果に影響を与える場合があります。詳細は、「ArcGIS フィールド データ タイプ」をご参照ください。 |
|
GEOMETRY |
ST_GEOMETRY or GEOMETRY |
ジオデータベースでは、データベースに作成されるデータ タイプは、フィーチャクラスの作成時に使用されるコンフィグレーション キーワードの、GEOMETRY_STORAGE の設定によって決まります。 ST_Geometry およびジオメトリはスーパークラスです。ArcGIS for Desktop でフィーチャクラスを作成する場合、ST_Geometry として作成されるポイント フィーチャクラスは ST_Point サブタイプを格納に使用し、PostGIS ジオメトリとして作成されるポイント フィーチャクラスは Point サブタイプを格納に使用します。ArcGIS for Desktop で作成される他のすべてのタイプのフィーチャクラスには、スーパークラスが使用されます。SQL を使用して空間列を作成する場合には、実際に作成されるデータ サブタイプは、指定するサブタイプのタイプに依存します。 ST_Geometry をデータベースで使用するには、インストールする必要があります。詳細については、「PostgreSQL データベースへの ST_Geometry タイプの追加」をご参照ください。 PostGIS ジオメトリ タイプを使用するには、PostgreSQL データベース クラスタ内に PostGIS をインストールし、データベース自体を有効化して PostGIS を使用できるようにする必要があります。詳細については、PostgreSQL のドキュメントをご参照ください。 |
|
GLOBAL ID |
VARCHAR(38) |
ジオデータベースでのみサポートされています。 |
|
GUID |
VARCHAR(38) |
||
LONG INTEGER |
INTEGER |
SERIAL |
|
OBJECT ID |
ジオデータベースの INTEGER データベースの SERIAL |
ArcGIS の ObjectID タイプは、テーブル(またはフィーチャクラス)に登録された RowID 列です。1 つのテーブルにつき、1 つだけ存在します。 |
|
RASTER |
BYTEA or ST_RASTER |
ラスタはジオデータベースのみでサポートされます。作成される PostgreSQL データ タイプは、ラスタ カタログ、ラスタ データセット、またはモザイク データセットの作成時に使用される DBTUNE コンフィグレーション キーワードによって変わります。 ST_Raster を使用する場合は、別途、ジオデータベースに ST_Raster を構成する必要があります。詳細については、「PostgreSQL での ST_Raster タイプのインストール」をご参照ください。 |
|
SHORT INTEGER |
SMALLINT |
REAL |
|
TEXT |
CHARACTER VARYING |
CHARACTER、VARCHAR、TEXT |
SQLite
SQLite は、他のほとんどのデータベース管理システムで行われている方法と同じ方法では、データ タイプを実装していません。SQLite では、さまざまなデータ タイプを格納できる数種類の格納クラスが用意されています。ArcGIS で日付フィールド、ジオメトリ フィールド、または GUID フィールドを作成するときに、SQLite に realdate タイプ、geometryblob タイプ、および uuidtext タイプが作成されるというように、SQLite ではデータ タイプに名前を付けることができます。また、SQLite は、列に格納するデータ タイプについての情報を得るために、データ タイプの文字テキストを検索します。たとえば、「int」が検索されて、それが整数フィールドとして解釈されます。したがって、ポイントのデータ タイプを指定した場合、ポイントに文字列「int」が含まれるため、SQLite はそれを整数フィールドとみなします。
ArcGIS は、テーブル定義のフィールドに指定されたデータ タイプが、フィールド内のすべての値に適用されるデータ タイプであると仮定します。ArcGIS によってデータ タイプが認識されなければ、ArcGIS からテーブルにアクセスすることはできません。
ArcGIS データ タイプ |
作成される SQLite データ タイプ |
表示可能なその他の SQLite データ タイプ |
注意事項 |
---|---|---|---|
BLOB |
blob(n) |
||
DATE |
realdate |
||
DOUBLE |
float64 |
numeric、double、float、boolean、real integer、int、int64、int32(SpatiaLite がインストールされていないデータベースの場合) |
|
FLOAT |
float64 |
||
GEOMETRY |
geometryblob |
||
GUID |
uuidtext |
||
LONG INTEGER |
int32(n) |
integer、int、int32(SpatiaLiteを含むデータベースの場合) 整数の主キー |
n >= -2147483648 かつ n <= 2147483648 |
OBJECTID |
int32 |
||
SHORT INTEGER |
int16(n) |
n >= -32768 かつ n <= 32768 |
|
TEXT |
text(n) |
char、varchar、blob |
Teradata
ArcGIS データ タイプ |
作成される Teradata データ タイプ |
表示可能なその他の Teradata データ タイプ |
注意事項 |
---|---|---|---|
BLOB |
blob |
Teradata のデフォルトのサイズを使用して作成される blob。 |
|
DATE |
timestamp |
||
DOUBLE |
decimal(38,8) |
decimal(n,m)、number(n,m)、numeric(n,m) m > 0 |
ArcGIS で指定した精度と縮尺が、データベースに作成されるデータ タイプの結果に影響を与える場合があります。 |
FLOAT |
decimal(38,8) |
decimal(n,m)、number(n,m)、numeric(n,m) m > 0 |
ArcGIS で指定した精度と縮尺が、データベースに作成されるデータ タイプの結果に影響を与える場合があります。 |
GEOMETRY |
CLOB(ST_Geometry) |
このフィールドは、ArcGIS が空間列として認識できるように shape という名前にする必要があります。 |
|
GUID |
character(38) のラテン文字セット |
||
LONG INTEGER |
integer |
decimal(n,m)、number(n,m)、numeric(n,m) n = 5、6、7、8、または 9 m = 0 |
|
OBJECTID |
integer |
||
SHORT INTEGER |
smallint |
decimal(n,m)、number(n,m)、numeric(n,m) n <= 4 m = 0 |
|
TEXT |
varchar(50) のユニコード文字セット |
varchar(n) のユニコード文字セット、varchar(n) のラテン文字セット、char(n) のユニコード文字セット、char(n) のラテン文字セット |