IT用語帳
PD-Dデータベース · データベース設計

一意性制約

Uniqueness Constraint

いちいせいせいやく

指定した列または列の組に、同じ値を持つ行が2つ以上存在しないことを保証する制約。SQLではUNIQUEで指定し、主キー制約は一意性制約にNOT NULLを加えたものに当たる。UNIQUE制約の列ではNULLを重複とみなさず複数行がNULLを持てるDBMSが多く、一意性の検査のためにユニークインデックスを自動で作成するDBMSも多い。

共有:

Related

他の資格での定義

Past Exams

過去問での出題

過去問で 4 回出題(ITパスポート試験 2・応用情報技術者試験 2)

出典: 独立行政法人情報処理推進機構(IPA)の過去問題。問題文は IPA のサイトの PDF で確認できます。「選択肢」は、問題文ではなく選択肢に出たものです。用語名で照合しているため、関係の薄い問題が含まれることがあります。

Related

関連キーワードの用語

PD-D論理データモデル

概念データモデルを、採用するデータベースの方式(関係データベースなら表・列・主キー・外部キー)に沿って表し直したデータモデル。正規化によってデータの重複と更新時異状を取り除き、データ型や制約を定める。どの記憶装置にどう格納するかといった物理的な事項には立ち入らない。

PD-D外部キー

ある表の列のうち、他の表(または同じ表)の主キーや一意キーを参照する列。外部キーの値は参照先に存在する値かNULLでなければならないという参照制約により、表どうしの関連の整合性が保たれる。参照先の行を削除・更新したときの動作は、CASCADE、SET NULL、RESTRICTなどで指定する。

PD-Dサロゲートキー

業務上の意味を持たない値(連番やUUIDなど)を、システムが自動的に割り当てて主キーとするもの。代理キーともいい、顧客コードのような業務上のキー(自然キー)が長い、複数列になる、将来変わるおそれがあるといった場合に使い、主キーを短く安定させられる。ただし自然キーの重複は別に一意性制約で防ぐ必要がある。

PD-D検査制約

列の値や、同じ行の複数の列の値が満たすべき条件を定義する制約。SQLではCHECK(価格 >= 0)のように書き、条件が偽になる行の追加や更新を拒否する(結果が不明になるNULLとの比較は違反とみなされない)。値の範囲や選択肢、開始日が終了日より前といった業務ルールをデータベース側で守れる。

PD-Dユニークインデックス

キーの値が重複しないことを保証する索引。重複する値の行を追加・更新しようとするとエラーになる。主キー制約や一意性制約を定義すると、多くのDBMSは一意性の検査のためにユニークインデックスを自動で作成する。