読み方 : ちぇっくせいやく

CHECK制約【check constraint】チェック制約/検査制約

CHECK制約とは?

リレーショナルデータベース(RDB)でテーブルにデータを追加・更新する際に課すことができる制約(constraint)の種類の一つで、指定した条件を満たしたデータしか記録できないようにするもの。列の値や複数列の関係が一定の条件に従うことを保証する仕組みである。
CHECK制約のイメージ画像

リレーショナルデータベースでは、表に登録されるデータの整合性や妥当性を維持するために様々な制約が用意されている。CHECK制約はその一つで、これを設定した列では、データの書き込みが行われる際に制約に指定した条件を満たすかどうかをチェックし、満たしていなければ書き込みは拒否される。制約はテーブルの作成時などにSQL文の中で条件式論理式)などを用いて記述する。

例えば、商品の価格を数値で表す「価格」フィールドに対して、「価格>=0」というCHECK制約を設定しておけば、何らかの誤りで価格に負の値を記録しようとしても、データベース管理システムDBMS)側が制約違反として書き込み操作を拒否する。複数の列を組み合わせた条件を設定することも可能で、「開始日が終了日より前である」など、列同士の論理的な関係を指定することもできる。

CHECK制約はテーブルの定義時に指定するほか、既存のテーブルに対して後から追加することもできる。制約はデータベース管理システムの内部で自動的に評価されるため、アプリケーション側で個別に検証処理を記述しなくても一定のデータ品質を保つことができる。CHECK制約を適切に設定することで、データベースに保存される値が定義されたルールに従うことが保証され、誤入力や不正な値の登録を抑制することができる。

他の辞典等による「CHECK制約」の解説 (外部サイト)

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。