データの整合性を確保する
最も簡単なデータベースドメインは、データベースの列で使用されるデータ型です。 このデータ型は、組み込み型(整数や文字列など)またはデータの制約を定義するカスタム型にすることができます。
データ入力とドメイン
あなたの名前と電子メールだけでなく、完全な求人アプリケーションでも、オンライン形式のデータにデータを入力すると、データベースに入力が格納されます。 そのデータベースは一連の基準に基づいてエントリを評価します。 たとえば、郵便番号を入力すると、データベースには5つの番号、または完全な米国の郵便番号(5つの数字、ハイフン、4つの数字)があります。 郵便番号のフィールドにあなたの名前を入力すると、データベースはおそらく文句を言うでしょう。
これは、データベースが郵便番号フィールドに定義されているドメインに対してエントリをテストしているためです。 ドメインは基本的に、オプションの制限を含むことができるデータ型です。
データベースドメインの理解
データベースドメインを理解するために、データベースの他のいくつかの側面について考えてみましょう。
- データベーススキーマは、列またはフィールドとも呼ばれる一連の属性を定義します。 たとえば、「従業員連絡先情報」テーブルがある場合、FirstName、LastName、JobTitle、StreetAddress、City、State、ZipCode、PhoneNumberおよびEmailの属性が含まれている可能性があります。
- 各属性には、許容値を定義するドメインがあります。 これには、そのデータ型、長さ、値、その他の詳細が含まれます。
たとえば、属性ZipCodeのドメインは、データベースに応じて、INTやINTEGERと呼ばれる整数などの数値データ型を指定することがあります。 あるいは、データベースデザイナーは代わりにCHARと呼ばれる文字として定義することもできます。 属性は、特定の長さを要求するように、または空の値または未知の値が許可されるかどうかをさらに定義できます。
ドメインを定義するすべての要素をまとめると、カスタマイズされたデータ型(「ユーザー定義データ型」またはUDTとも呼ばれます)が作成されます。
ドメインインテグリティについて
属性の許可された値によって、 ドメインの完全性が作成され、フィールド内のすべてのデータに有効な値が含まれます。
ドメインの完全性は次のように定義されます。
- 整数、文字、小数などのデータ型
- 許容されるデータの長さ
- 上限と下限を定義する範囲
- 許容値に対する制約または制限。 たとえば、米国の郵便番号フィールドは、完全なZIP + 4コードまたは完全な9桁のコードを実施することがあります。
- NULLサポートのタイプ、または属性が不明であるかNULL値を持つことができるかどうか
- デフォルト値(存在する場合)
- 日付形式(該当する場合)(たとえば、dd / mm / yyまたはmm / dd / yyyy)
ドメインの作成
SQL (構造化照会言語)またはSQLのフレーバーを使用するデータベースの場合は、CREATE DOMAIN SQLコマンドを使用します。
たとえば、実行文は5文字のデータ型CHARのZipCode属性を作成します。 NULLまたは不明な値は許可されません。 データの範囲は "00000"と "99999"の間でなければなりません。データ型CHARのZipCode属性を5文字で作成します。 NULLまたは不明な値は許可されません。 データの範囲は、 "00000"から "99999"の間でなければなりません。
CREATE DOMAIN ZipCode CHAR(5)NOT NULL CHECK(VALUE> '00000' AND VALUE
すべてのタイプのデータベースは、たとえそれがドメインと呼ばれなくても、許容されるデータを管理する一連の制限とルールを定義する方法を提供します。 詳細については、データベースのドキュメントを参照してください。