跳到正文

平成23年度 特別試験 ITパスポート試験 問72

这道题的解析和你的作答记录。

問72
頻出度★★★

関係データベースに関する記述中の a, b に入れる字句の適切な組合せはどれか。 関係データベースにおいて, レコード (行) を一意に識別するための情報を a と言い, 表と表を特定の b で関連付けることもできる。

出典 平成23年度 特別試験 ITパスポート試験 問72
解説

問 72

  • 错误ア

    b 的字段是正确的,但 a 的实体是错误的。所谓实体(entity),是指业务中作为管理对象的人、物、事情本身,或者对其加以表现的概念;在 E-R 图中用矩形表示,在关系数据库中多数情况下对应于一个表。也就是说,实体是接近于「表本身」这一粒度的术语,而不是用于唯一识别表中某一行的信息。组合题必须两个空栏都正确,因此在 a 已经错误的时点,这个选项就不能选。

  • 错误イ

    a、b 都错误。a 的实体如前所述是指作为管理对象的实体的术语,而不是唯一识别行的信息(主键)。b 的记录指的是表的行本身,即一条数据的集合。表与表的关联是通过匹配共同的列的取值来实现的,记录并不是关联的线索,而是作为关联结果被取出的那一侧的数据。因此两个空栏都不能成立。

  • ウ

    正解 正确答案是 ウ(a: 主键 / b: 字段)。首先考虑空栏 a。题干把它定义为「用于唯一识别记录(行)的信息」,这正是关系数据库中主键(primary key)的定义本身。所谓主键,是指能够把表中的某一行与其他行区分开、可靠地确定出来的列(或列的组合),其条件是取值不重复(唯一性)、取值不为空(NULL)。例如员工表中的员工编号、商品表中的商品编码,这类在业务上能唯一确定的编号或代码会被选作主键。接着考虑空栏 b。关系数据库并不具备用线把表与表连起来的特殊机制,而是在两个表中都准备一个共同的列(字段),把该列取值一致的行彼此结合起来,以此把表与表关联起来。例如,只要在订单表中设置一个名为客户编码的字段,就可以与客户表的主键客户编码进行取值匹配,从而为每一条订单取出客户名称和地址。像这样为了引用其他表的主键而设置的列称为外键(foreign key),外键也是字段(列、项目)的一种。题干中「通过特定的 b 进行关联」这一说法,指的正是这个特定的列,所以 b 是字段。因此,a 填主键、b 填字段的 ウ 才是正确的组合。

  • 错误エ

    a 的主键是正确的,但 b 的记录是错误的。记录(行)是一条数据的集合,字段(列、项目)横向排列构成一条记录。在关系数据库中关联表与表时所匹配的,是两个表中共同存在的特定列的取值,也就是字段(外键与主键)。并不是以行为单位来连接的,所以 b 中不能填记录。要注意即使只有 a 正确,在组合题中也算作不正确。

ここがポイント
  • 主键的定义 —— 主键(primary key)是表中用于唯一识别记录(行)的列或列的组合。条件是取值不重复(唯一性)、不允许空值(NULL),一般选取像员工编号、商品编码这样在业务上能唯一确定的项目。
  • 表与表的关联和字段、外键 —— 在关系数据库中,通过匹配共同字段(列、项目)取值一致的行来把表与表关联起来。为了引用其他表的主键而设置的列就是外键(foreign key)。记录是行本身,实体是作为管理对象的实体(大致对应于表的概念),二者都不是充当关联线索的单位。
用語
解答問72ウ
练这一题

作答记录