正答2
解説
正解は2です。
関係データベースで、表の列にインデックス(索引)を設定する目的を問う問題です。
インデックスは本の索引のように、値から格納位置をすばやく探すための仕組みです。
【選択肢別解説】
1:× 外部キーの値を参照先の主キーの値に一致させるのは、参照制約(外部キー制約)の役割です。
インデックスの目的ではありません。
2:○ インデックスを設定すると、全行を順に調べなくてもデータの格納位置に直接たどり着けます。
そのため検索速度の向上が期待できます。
3:× インデックスは本体のデータとは別に領域を使うので、ディスク容量はむしろ増えます。
表を複数のディスクに分けるのはパーティショニングです。
4:× 列の値の重複を防ぐのは、一意性制約(UNIQUE制約)や主キー制約の役割です。
【ポイント】
インデックスは検索を速くする一方で、追加・更新・削除のたびに索引も更新するため、更新処理は遅くなります。
検索が多い列に絞って設定するのが基本です。