正答1
解説
正解は1です。
この問題は、関係データベースの主キー制約の条件を問うています。
主キーは、表の中の行を一意に識別するための列(または列の組)です。
主キー制約では、値が重複しないこと(一意性)と、値が空(NULL)でないことの2つが求められます。
【選択肢別解説】
1:○ 主キーの値が空だと、その行を識別できなくなります。
そのため主キーを構成する列は、NULLであってはなりません。
2:× 主キーは複数の列を組み合わせて構成することもでき、これを複合キーといいます。
列が一つであることは条件ではありません。
3:× 主キーとする列は、表のどの位置に定義されていてもかまいません。
列の並び順は主キー制約とは関係ありません。
4:× 別の表の候補キーと値が一致することを求めるのは、外部キーの参照制約です。
主キー制約の条件ではありません。
【ポイント】
主キー制約は「一意(UNIQUE)かつ非空(NOT NULL)」と覚えます。
外部キーは参照先の表の主キーなどに存在する値しか入れられない、という参照制約と区別しましょう。