午前問73
データベースにおける外部キーに関する記述のうち、適切なものはどれか。
| 外部キーがもつ特性を、一意性制約という。 | |
| 外部キーを設定したフィールドには、重複する値を設定することはできない。 | |
| 一つの表に複数の外部キーを設定することはできない。 | |
| 複数のフィールドを、まとめて一つの外部キーとして設定することができる。 |
『情報処理過去問.com』からiPhoneアプリがリリースされました!!
正解
- エ
解説
外部キーは、関係データベースで他表の行を参照するために設ける列(または列の組)です。表を正規化で分割しても相互の関連を保てるように設定し、更新や結合時の整合性(参照制約)を確保します。情報処理技術者試験では、外部キー属性を破線の下線で表すことが多いです。外部キーは複数列をまとめた複合外部キーとして設定できます。よって「エ」が適切です。
| ア. | 外部キーがもつ特性を、一意性制約という。 |
| 誤りです。一意性制約は、列(または列の組)の値が表内で一意になることを求める制約で、主キーや(厳密には)候補キーに関わる性質です。外部キーに関わるのは、参照先と整合を取る参照制約です。 | |
| イ. | 外部キーを設定したフィールドには、重複する値を設定することはできない。 |
| 誤りです。外部キーには同じ値を複数行で持たせることができます。参照ページの図でも「取引先」列に値「111」が重複して設定されています。 | |
| ウ. | 一つの表に複数の外部キーを設定することはできない。 |
| 誤りです。1つの表に複数の外部キーを設定できます。参照ページの図でも複数の外部キーが示されています。 | |
| エ. | 複数のフィールドを、まとめて一つの外部キーとして設定することができる。 |
| 正しいです。複数のフィールドをまとめた複合外部キーを設定できます。これは複合主キーが可能であるのと同様です。 |