Domain Dialog

ドメインを定義するには、 Domain ダイアログを使用します。ドメインは、許容値を制限する可能性のあるデータ型定義です。ドメインは、比較可能な列を含む複数のテーブルを作成する場合に役立ちます。各制約セットを個別に定義するのではなく、列に共通の制約を定義するドメインを作成し、列を作成するときにドメイン定義を再利用できます。

[ ドメイン ]ダイアログは、 一般 、 定義 、 制約 、および セキュリティ のタブを使用してドメインの開発を編成します。 SQL タブには、ダイアログ選択によって生成されたSQLコードが表示されます。

ドメインダイアログの一般タブ

[ 全般 ]タブのフィールドを使用して、ドメインを識別します。

  • Name フィールドを使用して、ドメインの説明的な名前を追加します。名前は pgAdmin ツリーコントロールに表示されます。

  • 所有者 の横にあるドロップダウンリストボックスを使用して、ドメインを所有するロールを選択します。

  • スキーマ フィールドのドロップダウンリストボックスから、ドメインが存在するスキーマの名前を選択します。

  • ドメインに関するメモを コメント フィールドに保存します。

[ 定義 ]タブをクリックして続行します。

ドメインダイアログ定義タブ

[ 定義 ]タブのフィールドを使用して、ドメインを説明します。

  • Basetype の横にあるドロップダウンリストボックスを使用して、データ型を指定します。

  • 状況依存の Length フィールドを使用して、数値型の数値長を指定します。

  • 状況依存の 精度 フィールドを使用して、数値型の有効桁数の合計を指定します。

  • Default フィールドにドメインデータ型のデフォルト値を指定します。デフォルトの式のデータ型は、ドメインのデータ型と一致する必要があります。デフォルト値が指定されていない場合、デフォルト値はnull値です。

  • NotNull スイッチを移動して、このドメインの値がnullにならないように指定します。

  • Collation の横にあるドロップダウンリストボックスを使用して、照合キャストを適用します。照合が指定されていない場合、基になるデータ型の既定の照合が使用されます。COLLATEが指定されている場合、基になる型は照合可能である必要があります。

[ Constraints ]タブをクリックして続行します。

ドメインダイアログの制約タブ

[ Constraints ]タブのフィールドを使用して、ドメインのルールを指定します。 追加 アイコン(+)をクリックして、制約を設定します。

  • Name フィールドを使用して、制約の名前を指定します。

  • Check フィールドを使用して、制約の式を提供します。

  • Validate チェックボックスを使用して、制約を検証するかどうかを決定します。デフォルトのチェックボックスはオンになっており、検証要件を設定します。

CHECK句は、ドメインの値が満たす必要がある整合性テストを指定します。各制約は、ブール結果を生成する式である必要があります。テストする値を参照するには、キーワードVALUEを使用します。TRUEまたはUNKNOWNと評価される式は成功します。式がFALSEの結果を生成した場合、エラーが報告され、値をドメイン型に変換できません。CHECK式にサブクエリを含めたり、VALUE以外の変数を参照したりすることはできません。ドメインに複数のCHECK制約がある場合、名前のアルファベット順にテストされます。

追加 アイコン(+)をクリックして、追加の制約を設定します。制約を破棄するには、行の左側にあるゴミ箱アイコンをクリックし、 DeleteRow ポップアップで削除を確認します。

[ セキュリティ ]タブをクリックして続行します。

ドメインダイアログのセキュリティタブ

セキュリティラベル パネルを使用して、セキュリティラベルを割り当てます。 追加 アイコン(+)をクリックして、ラベルを追加します。

  • Provider フィールドにセキュリティラベルプロバイダーを指定します。名前付きプロバイダーをロードし、提案されたラベル付け操作に同意する必要があります。

  • セキュリティラベル フィールドにセキュリティラベルを指定します。特定のラベルの意味は、ラベルプロバイダーの裁量にあります。PostgreSQLは、ラベルプロバイダーがセキュリティラベルを解釈する必要があるかどうか、またはどのように解釈するかについて制限を設けていません。それらを格納するメカニズムを提供するだけです。

追加 アイコン(+)をクリックして、追加の各ラベルを指定します。ラベルを破棄するには、行の左側にあるゴミ箱アイコンをクリックし、 DeleteRow ポップアップで削除を確認します。

SQL タブをクリックして続行します。

Domain ダイアログに入力すると、SQLコマンドが生成されます(以下の例を参照)。確認には SQL タブを使用します。再アクセスするかタブを切り替えて、SQLコマンドを変更します。

例

以下は、 ドメイン ダイアログでの選択によって生成されるsqlコマンドの例です。

ドメインダイアログのSQLタブ

この例は、入力された値が適切な形式であることを確認する postal_code という名前のドメインを作成する方法を示しています。

  • Info ボタン(i)をクリックして、オンラインヘルプにアクセスします。

  • Save ボタンをクリックして作業を保存します。

  • 作業を保存せずに終了するには、 閉じる ボタンをクリックします。

  • Reset ボタンをクリックして、構成パラメーターを復元します。