ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • ヘルプ
  • Sign Out
ArcGIS Desktop

ArcGIS Online

組織のマッピング プラットフォーム

ArcGIS Desktop

完全なプロ仕様の GIS

ArcGIS Enterprise

エンタープライズ GIS

ArcGIS Developers

位置情報利用アプリの開発ツール

ArcGIS Solutions

各種業界向けの無料のテンプレート マップおよびテンプレート アプリケーション

ArcGIS Marketplace

組織で使えるアプリとデータを取得

  • ドキュメント
  • サポート
Esri
  • サイン イン
user
  • マイ プロフィール
  • サイン アウト

ArcMap

  • ホーム
  • はじめに
  • マップ
  • 解析
  • データ管理
  • ツール
  • エクステンション

テーブルでのフィールドの定義

  • フィールド名
  • ドメインによるフィールド値の制御
  • サブタイプの使用

フィールドは、テーブルに構造を提供するコンポーネントです。フィールドのないテーブルを作成することはできません。ただしフィールドが定義されていれば、行 (レコード) が存在しない、空のテーブルを作成することができます。

データベースでは、フィールドはテーブル間のリレーションシップの維持に使用されます。これは、複数のテーブルの一致フィールドを作成することによって実現されます。たとえば、toy_store という名前のテーブルと各店舗の従業員を追跡するための従業員テーブルがデータベースに格納されている場合には、2 つのテーブルに、店舗 ID などを設定する共通のフィールドを作成します。特定の店舗の店舗 ID の値は、どちらのテーブルでも同じになります。

次の図は、toy_store テーブルに追加された STORE_ID フィールドを示しています。

STORE_ID 付きのテーブル
STORE_ID フィールド付きの toy_store テーブルが表示されます。

toy_store テーブルは、店舗 ID で従業員テーブルにリンクされています。次のテーブルには、「The Play House」の 3 人の従業員が示されています。

従業員テーブル
従業員テーブルは、STORE_ID フィールドで toy_store にリンクされています。

テーブルとそれらの属性インデックスのリレーションシップを維持するために、特定のフィールドも使用されます。

テーブルのフィールドには、同じカテゴリのデータが同じデータ タイプで格納されます。たとえば、顧客テーブルに name フィールドがある場合、このフィールドのエントリはすべて顧客名であり、テキストとして格納されます。エントリを混在させることはできません。つまり、あるレコードでこのフィールドに顧客名を設定し、別のレコードで製品名を設定することはできません。

テーブルを作成する、または既存のテーブルにフィールドを追加する際には、各フィールドでのデータの格納に使用するデータ タイプを定義します。場合によっては、フィールドの長さも指定します。

フィールド名

フィールド名は、テーブルの列に割り当てる名前です。フィールド名は、各列に含まれるデータを示す必要があります。たとえば、ArcCatalog でフィーチャクラスを作成する際、テーブルには Object ID フィールドと Shape フィールドが事前に設定されています。Object ID フィールドには、フィーチャクラス内の各オブジェクトの一意な ID 番号が含まれています。Shape フィールドは、フィーチャクラスに格納されるシェープ タイプ (ポイント、ライン、ポリゴン、マルチポイント、またはマルチパッチ) を定義します。

また、列のタイプを示すために慣用句を使用することもできます。たとえば、テーブルにインデックス付けに使用するための一意な ID を別に作成する場合は、一意なキーであることを示す UK を使用して、フィールドに ID_UK という名前を付けます。

同じテーブルに含まれるフィールドの名前は一意でなければなりません。たとえば、2 つの列に ObjectID という名前を付けることはできません。フィールド名は文字で始まらなければならず、スペースや予約語が含まれていてはなりません。データベース固有の制限事項の詳細については「ファイル ジオデータベースのサイズと名前の制限」または「データベース データと ArcGIS」をご参照ください。

ArcGIS では、エンタープライズ ジオデータベース内に格納されるテーブルに対して、特定のフィールド名が完全修飾名で表示されます。たとえば、Area という名前のフィールドが含まれたポリゴン フィーチャクラスを作成またはインポートする場合は、それにデータベース、スキーマ、テーブルの名前が追加されます。これはフィーチャクラスの属性テーブルに表示される名前です。つまり、archsites という名前のポリゴン フィーチャクラスが museum データベースの prof スキーマに格納されていた場合、Area フィールドは MUSEUM.PROF.ARCHSITES.AREA と表示されます。

エンタープライズ ジオデータベースで完全修飾名となるフィールド名は、次のとおりです。

  • FID
  • AREA
  • LEN
  • POINTS
  • NUMOFPTS
  • ENTITY
  • EMINX
  • EMINY
  • EMAXX
  • EMAXY
  • EMINZ
  • EMAXZ
  • MIN_MEASURE
  • MAX_MEASURE

このような場合は、異なるフィールド名またはフィールド エイリアスの使用を検討する必要があります。

フィールド名の変更

[プロパティ] ダイアログ ボックスの [フィールド] タブで、テーブルまたはフィーチャクラスのフィールド名を変更できます。ArcGIS 10 リリース以降のジオデータベースのフィールドでは名前の変更をサポートしており、データベース テーブルのフィールド名を変更できます。

フィールド名を変更するには、カタログ ツリーで該当するフィーチャクラスまたはテーブルを右クリックし、[プロパティ] をクリックします。該当するテーブルまたはフィーチャクラスのフィールドのリストを表示するには、[フィールド] タブをクリックします。名前を変更するフィールドのテキストをクリックし、新しい名前を入力します。[OK] をクリックして変更内容を適用し、[プロパティ] ダイアログ ボックスを閉じます。

次のフィールド名は変更できません。

  • ObjectID および GlobalID フィールド
  • シェープに関連するフィールド (Shape、shape length、shape area)
  • 有効になっている、ネットワーク フィーチャクラスの補助役割フィールドまたはネットワーク ウェイト フィールド
  • リプレゼンテーション フィールド
  • ネットワーク データセット、テレイン、またはパーセル ファブリックに関連しているフィーチャクラス内のフィールド
  • 編集情報の記録に使用されているフィールド
  • リレーションシップ クラスの主キーと外部キーのフィールド
  • サブタイプ フィールド
  • ラスター フィールド

フィールド名のルールと制限事項

次の表に、サポートされているフィールド名の文字ルールを示します。

文字名前の先頭その他の位置エイリアス

文字 (A から Z)

YesYesYes

アンダースコア (_)

YesYes

数字 (0–9)

YesYes

スペース

Yes

シンボル (アンダースコア以外)

Yes

上付き英数字

Yes

下付き英数字

Yes

その他のフィールド名のルールと制限事項は次のとおりです。

  • フィールド名に予約語 (all、result など) を含めることはできません。

    その他の予約語については、DBMS (データベース管理システム) のドキュメントをご参照ください。

  • フィールド (列) 名の長さは基盤となるデータベースによって異なります。

    データベース固有の制限事項の詳細については「ファイル ジオデータベースのサイズと名前の制限」または「データベース データと ArcGIS」をご参照ください。

フィールド エイリアス

フィールド エイリアスを使用して、フィールドに別の名前を割り当てることができます。通常は、そのフィールドにどのようなデータが格納されるのかが伝わる範囲で、最も短いフィールド名を使用します。また、先に示したように、フィールド名にスペースや特殊文字を使用することはできず、特定のフィールドはテーブルに完全修飾名で表示されます。このような場合には、フィールド エイリアスを使用して、フィールドによりわかりやすい名前を付けることができます。たとえば、道路の種類を格納する ST_SUFX という名前のフィールドがあり、道路の種類が道路名に使用されている接尾辞によって示される場合は、このフィールドに「Street name suffix」というエイリアスを割り当てることができます。

フィールド エイリアスを設定する方法の詳細

ヒント:

ジオプロセシング メソッドを使用すると、テーブル名とフィールド名を整合チェックできます。

ドメインによるフィールド値の制御

属性ドメインとは、ジオデータベースのテーブルのフィールドについての有効な値を示すルールです。属性ドメインは、ユーザーが特定のフィールドに追加できるデータ値を制限することにより、データの整合性を保証します。

属性ドメインをフィールドに適用できるのは、そのフィールドに設定できる値の集合または範囲を定義できる場合だけです。たとえば、「好きな食べ物は何ですか」というアンケート調査への回答を格納するフィールドは、 回答の数が多すぎるため、属性ドメインを適用するのは困難です。これに対し、瞳の色のデータを格納するフィールドは、有効な値が数種類に限られるため、属性ドメインを適用することが可能です。

  • Black
  • Brown
  • Blue
  • Green
  • Hazel
  • Gray
  • Violet

瞳の色を格納するフィールドに属性ドメインを使用すると、値の一貫性が保証されます。アンケート担当者が瞳の色のテキスト フィールドに好きな色を入力できる場合は、担当者によっては青の瞳として次のような値が入力されてしまう可能性があります。

  • Azure (アジュール)
  • Navy (濃紺)
  • Sky blue (空色)
  • Cobalt (コバルト)
  • Aquamarine (アクアマリン)

属性ドメインはスペルミスや入力ミスも防ぎます。アンケート担当者が青の瞳に「blue」と入力しなければならないことを知っていたとしても、単語のスペルを誤ったり (bleu)、テキスト フィールドに「blue」と入力するつもりが別のキーを押したりすることもあります。

属性ドメインの種類

フィールド値の制約に使用できる属性ドメインとして、コード値ドメインと範囲ドメインの 2 種類があります。

コード値ドメインは、コードを使用して、個別のデータを格納するフィールドに設定できる値を定義します。

コード値ドメインは任意のデータ タイプに使用することができます。瞳の色のフィールドでは、次の例のコードセットを使用してコード値ドメインを作成することができます。

  • 例 1
    • Blk = Black
    • Brn = Brown
    • Blu = Blue
    • Grn = Green
    • Hzl = Hazel
    • Gra = Gray
    • Vlt = Violet
  • 例 2
    • 1 = Black
    • 2 = Brown
    • 3 = Blue
    • 4 = Green
    • 5 = Hazel
    • 6 = Gray
    • 7 = Violet

範囲ドメインは、フィールドに設定可能な数値の範囲を定義します。

範囲ドメインを使用するフィールドのデータ タイプは数値または日付でなければなりません。たとえば、動物園で誕生したニシローランドゴリラの赤ちゃんの体重を格納するフィールドに範囲ドメインを適用できます。この場合の範囲は、最低体重 (1kg) から最高体重 (2.5kg) までとなります。

属性ドメインの詳細については、「属性ドメインのクイック ツアー」をご参照ください。

属性ドメインの作成方法の詳細については、「属性範囲ドメインの新規作成」および「コード値ドメインの新規作成」をご参照ください。

サブタイプの使用

サブタイプは、ジオデータベースのフィーチャクラスまたはテーブルでの分類です。これにより、データの一意な特性や振舞いに基づいて、フィーチャを論理的にグループ化することができます。この特性や振舞いは、テーブルの 1 つのフィールドの値によって表されます。たとえば、水文学のテーブルの場合は、河口、支流、水道 (澪)、運河、河川などの水路の種類に基づいて、サブタイプを定義することができます。これらのサブタイプごとに、異なるトポロジ ルール、接続性ルール、デフォルト値、リレーションシップ ルールを適用することができます。

サブタイプを使用して関連するフィーチャのグループを格納すると、クエリのパフォーマンスを向上させることができます。サブタイプを使用せずに、種類の異なるデータを別々のフィーチャクラスに格納すると、データベースのフィーチャクラスの数が増え、検索に時間がかかるようになります。

サブタイプの使用時は、次のルールが適用されます。

  • サブタイプを適用できるのは、テーブルまたはフィーチャクラスの 1 つのフィールドだけです。
  • サブタイプのベースとなるフィールドが long または short integer タイプのフィールドでなければなりません。
  • サブタイプごとに異なるトポロジ ルールおよびリレーションシップ ルールを適用することができます。
  • テーブルの他のフィールドに、サブタイプに基づいて異なる属性ドメインやコード値ドメインを適用できます。

サブタイプを適用するには、以下の手順を実行します。

  1. サブタイプを適用するフィールドが short または long integer タイプであることを確認します。そうでない場合は、テーブルまたはフィーチャクラスに long または short integer タイプのフィールドを追加します。ほとんどの場合は、short integer で十分です。ただし、サブタイプの値が 32,767 を超える可能性がある場合は、long integer フィールドを使用します。

    たとえば、河川のフィーチャクラスの場合は、Watershed という名前の short integer フィールドを追加して、河川が合流する分水界に基づいてサブタイプを作成することができます。

  2. テーブルまたはフィーチャクラスのテーブルの [プロパティ] ダイアログ ボックスを開き、[サブタイプ] タブの最初のドロップダウン リストからサブタイプ フィールドを選択します。

    河川の例の場合は、[サブタイプ フィールド] リストから Watershed フィールドを選択します。

    新しいサブタイプが Subtypes テーブルに自動的に追加されます。デフォルトのサブタイプは、コードが 0、説明が「New Subtype」に設定されています。

  3. これらの各フィールドをダブルクリックして、サブタイプ コードと適切な説明を入力します。

    たとえば、最初のコードを 1、説明を最初の分水界の名前に変更します。

  4. 必要に応じて、引き続き Subtypes テーブルにサブタイプのコードと説明を追加します。

    コード 1 の下のフィールドにコード 2 を追加して、[説明] フィールドに該当する分水界の名前を入力します。そして、その下のフィールドにコード 3 を追加して、再び該当する分水界の名前を入力するという作業を繰り返し、河川フィーチャクラスで表されるすべての分水界のコードと説明を作成していきます。

  5. サブタイプごとに異なるデフォルト値やドメインを指定するには、[サブタイプ] リストでサブタイプをクリックします。[デフォルト値とドメイン] リストで、必要に応じて、任意のフィールドのデフォルト値を入力することができます。リスト内のフィールドにコード値ドメインまたは属性ドメインを適用するには、[ドメイン] フィールドをクリックして、ドロップダウン リストからドメインを選択します。ドメインが存在しない場合は、ドメインを作成することができます。[プロパティ] ダイアログ ボックスの下部にある [ドメイン] ボタンをクリックして、[ワークスペース ドメイン] ダイアログ ボックスを開きます。

    指定したデフォルト値とドメインは、[サブタイプ] リストから選択したサブタイプにのみ適用されます。[サブタイプ] リストから別のサブタイプを選択すると、(そのサブタイプのデフォルト値またはドメインを指定していない場合は) デフォルト値またはドメインが空になるか、選択したサブタイプの値が表示されます。

サブタイプの詳細

関連トピック

  • 特殊なテーブルのエレメント
  • テーブルの定義
  • ArcGIS フィールド データ タイプ
  • DBMS のデータ タイプ

ArcGIS Desktop

  • ホーム
  • ドキュメント
  • サポート

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

Esri について

  • 会社概要
  • 採用情報
  • Esri ブログ
  • ユーザ カンファレンス
  • デベロッパ サミット
Esri
ご意見・ご感想をお寄せください。
Copyright © 2021 Esri. | プライバシー | リーガル