制約のチェックの定義

www.altova.com このトピックを印刷 前のページ 1つ上のレベル 次のページ

ホーム >  チュートリアル > "ZooDB" データベース > 制約の定義 >

制約のチェックの定義

制約のチェックが定義されると、テーブルが追加される前に、データは制約のチェック内で指定される式に従い検証されます。 検証に失敗したデータは追加されません。

 

チュートリアルのこのセクションでは、tblAnimalBirths の Mother と Father 列に異なる動物が入力する制約のチェックが作成されます。この制約は、1行以上に適用され、テーブルデザインの制約のチェックセクション、および、オンラインブラウザーの制約のサブフォルダに表示されます。

app_display-check-constraint

 

制約のチェックを定義する方法

1.オンラインブラウザー内で、テーブル tblAnimalBirths を右クリックし、 「デザインエディター | 新規のデザインエディターで表示する をコンテキストメニューから選択します。
2.テーブルデザインを右クリックし、新規の挿入 | 制約のチェック をコンテキストメニューから選択します。 名前 <generated> を持つデザイン内で制約のチェックが作成されると、エントリが編集のために選択されます。
3.任意で、制約の名前を <generated> から "CK_CheckParents" に変更し、 Enter を押します。名前を <generated> のままにすると、キーの名前がデータベースにより自動的に生成されます。
4.Expression 列で、 "[expression required]" エントリをダブルクリックし、 "Mother <> Father" を入力し、 Enter を押します。
5.データベース構造変更スクリプトウィンドウ内で、変更スクリプトの実行 ic_execute-sql ボタンをクリックして、変更スクリプトを実行し、データベースに新規の制約のチェックをコミットします。

 

制約のチェックをチェックする方法

データベースに制約のチェックがコミットされると、Mother と Father 列に同じ動物 IDを入力することはできません。 両方の行内に同じ値が含まれる場合、 DatabaseSpy はエラーをメッセージタブに表示します。

app_output-check-constraint-failed


(C) 2019 Altova GmbH