定義域 (データベース)

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内検索

定義域(ていぎいき、ドメイン: domain)は、データ管理およびデータモデリングデータベース設計の文脈では、あるデータ要素が値としてとる可能性のある一意な値すべてから構成される、名前つきの有限集合をいう。 データ型と同じ意味と考えてよい。 現在は単に(タイプ、type)と略されることも多い。

定義域の境界を決定する規則は、数え上げ (列挙) リストで定義されるデータ型と同じくらいに簡潔である可能性もある。

例として、関係データベース (リレーショナルデータベース) で人物についての情報を収める関係 (リレーション表、テーブル) を考える。 この関係では、一人の人物につき一つの組 (タプル、行) が対応する。 組は、0以上の属性の集合からなるデータ構造である。 この関係は、ジェンダーという属性 (列、カラム) をもつ。 属性は、属性名と定義域の名称のペアである。 属性は、その定義域に適合するなんらかの属性値をもつ。 このジェンダー属性は、2つのコード値のうち一つをもつことができる。 すなわち、"F" を女性 (Female) に、"M" を男性 (Male) に、それぞれ対応するコード値とするのである。 NULL については、ジェンダーが不明であるか、ジェンダーをあてはめられない場合に使う。 あるいは特別なコード値として "U" を不明な (Unknown) 場合に使う。 このように、ジェンダー属性の定義域は {"F", "M"} (あるいは {"F", "M", "U"} ) となる。

定義域のほかの例としては、{"赤", "緑", "青", ...} で定義される色の定義域や、整数型文字列型などが考えられるであろう。

この項目で説明している定義域の定義は、ある領域としての定義域の概念である。 ここでいう領域とは、数学における関数の定義における独立変数という値の集合という、概念である。

関係データベースデータベース言語 SQL では、CREATE DOMAIN 構文で定義域を定義することができる。

CREATE DOMAIN PHONE_NUMBER AS CHAR(20)

関連項目[編集]

参考文献[編集]