問84
頻出度★★★
関係データベースの主キーに関する記述のうち, 適切なものはどれか。
这道题的解析和你的作答记录。
関係データベースの主キーに関する記述のうち, 適切なものはどれか。
表与表之间的关联,是通过一个表的主键被另一个表作为外键引用而建立起来的。作为引用方的列不必是主键,被引用的一方也不限于主键(有些实现允许引用带唯一性约束的列)。因此断言「只能通过主键相互关联」是错误的。
主键受实体完整性约束的限制,不能取 NULL 作为值。NULL 表示「值未知或未定」,若允许 NULL 就无法唯一识别行。对于复合主键,组成它的任何一个数据项都不能为 NULL。
主键带有唯一性约束,同一个表中不允许存在取值相同的多行。若允许值重复,就无法用该值确定某一行,主键也就失去了作用。允许重复的是主键以外的普通数据项。
正解 主键的要求是「能够唯一识别表中的行」,如果单个数据项无法做到唯一,就可以把多个数据项组合起来作为主键。这称为复合主键(联合主键)。例如在「订单明细」表中,仅凭订单编号无法确定某一行,但把订单编号和明细行号组合起来就能唯一识别该行。因此,「在同一个表中,可以将多个数据项组合起来作为主键」的 エ 是正确的。