主キーには「NOT NULL(空値を許可しない)」および「UNIQUE(値の重複を許可しない)」の2つのルールが暗黙的かつ強制的に適用されます。1つのテーブルに設定できる主キーは1つだけですが、複数列を組み合わせて構成する「複合主キー」を設定することも可能です。一方、外部キーは参照先テーブルの主キー(または一意キー)に実在する値のみを格納できますが、デフォルトでは「NULL(値なし)」の挿入が許可される点に留意が必要です。Oracle Databaseでは、主キーを定義するとBツリー・ユニーク・インデックスが自動的に生成され、高速な検索と一意性チェックが実行されます。
試験でのポイント