ユニークインデックス

更新日:

用語解説

ユニークインデックスは、索引キーとなる一列又は列組合せについて重複エントリを許さない索引です。検索経路を提供すると同時に一意性を検査し、UNIQUE制約や主キーの実装に利用されます。

■ 試験で押さえるポイント

  • 複合ユニーク索引(a,b)はaとbの組合せが同じ行を拒否します。aだけ又はbだけの重複は許されるため、一列ごとの一意性とは異なります。

  • NULL同士を同じ値として拒否するか、複数NULLを許すかはDBMSや指定により異なります。候補キーにするなら一意性に加えてNOT NULLも必要です。

  • UNIQUE制約はデータの正しさを表す論理仕様、ユニークインデックスはその検査と検索を行う物理構造です。DBMSが制約の裏で索引を作っても両概念は同一ではありません。

  • 挿入・キー更新ごとに既存キーを検査するため、通常索引と同様に容量と更新コストがかかります。重複データが既にあれば作成に失敗します。

■ 選択肢での判断ポイント

列組合せ全体の重複を防ぐこと、主キーとの違い、NULLの製品差を判断します。ユニーク索引を複数作れる一方、主キーとして選ぶものは表に一つです。

例: UNIQUE(店舗番号, 会員番号)なら(1,10)と(2,10)は登録できますが、(1,10)の二件目は拒否されます。会員番号10単独の重複を禁止する索引ではありません。

音声で聞く

同じ分野の用語