ArcGIS でサポートされている SQL Server のデータ タイプ
データベースにテーブルを作成する、またはテーブルに列を追加すると、それらの列は特定のデータ タイプとして作成されます。データ タイプとは、有効な値、データで実行できる操作、およびその列のデータがデータベースに格納される方法を識別するための分類のことを指します。
ArcGIS からデータベース テーブルにアクセスすると、特定のデータ タイプを操作できます。カタログ ツリーの [Database Connections] ノードや ArcMap のクエリ レイヤからデータベース テーブルにアクセスする場合、ArcGIS はサポートされていないデータ タイプを除外します。データベース テーブルに直接アクセスする場合、サポートされていないデータ タイプは ArcGIS インタフェースには表示されず、ArcGIS からは編集できません。同様に、サポートされていないデータ タイプを含むテーブルを ArcGIS でコピーする場合、サポートされているデータ タイプのみがコピーされます。テーブルを別のデータベースやジオデータベースに貼り付けるときも、サポートされていないデータ タイプの列は対象外となります。
ArcGIS でフィーチャクラスまたはテーブルを作成したり、ArcGIS を使用して既存のテーブルまたはフィーチャクラスに列を追加したりするとき、フィールドに割り当てることのできる ArcGIS データ タイプは 12 種類あります。これらのタイプに対応しないデータベースのデータ タイプは、ArcGIS クライアントアプリケーションでは直接使用できません。
最初の列は ArcGIS データ タイプです。2 番目の列は、データベースに作成される SQL Server のデータ タイプです。3 番目の列は、ArcGIS で表示するときに、ArcGIS データ タイプにマップされるその他の 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) が使用されます。 |