首页 > 试题广场 >

设有两个数据库表,父表和子表之间是一对多的联系,为控制子表和

[单选题]
设有两个数据库表,父表和子表之间是一对多的联系,为控制子表和父表的关联,可以设置"参照完整性规则",为此要求这两个表(  )。
  • 在父表连接字段上建立普通索引,在子表连接字段上建立主索引
  • 在父表连接字段上建立主索引,在子表连接字段上建立普通索引
  • 在父表连接字段上不需要建立任何索引,在子表连接字段上建立普通索引
  • 在父表和子表的连接字段上都要建立主索引
用订单表和订单项表解释一下,订单表相当于父表,订单项表相当于子表,一个订单中可以包括多个订单项。订单id是父表的主键,根据订单id在子表查询相应的订单项集合。因为使用的是订单id,所以应该对应父表是主索引,而在子表中只是一个普通字段,所以是普通索引。
发表于 2019-09-29 14:44:44 回复(0)
选B,
在父表连接字段上建立主索引,在子表连接字段上建立普通索引。
发表于 2021-05-12 15:35:53 回复(0)
1. 首先分析选项A: - 在一对多联系中,父表连接字段建立普通索引,子表连接字段建立主索引是不合理的。因为主索引要求字段值唯一且不允许为空,父表连接字段若建立普通索引,可能无法很好地保证参照完整性规则中父表与子表关联的有效性。所以A选项错误。 2. 接着看选项B: - 父表连接字段建立主索引,可以保证父表中连接字段值的唯一性,便于子表参照。子表连接字段建立普通索引,既可以提高查询效率,又能满足一对多关系中子表对父表的参照需求。这种设置符合参照完整性规则对表索引的要求,B选项正确。 3. 再看选项C: - 父表连接字段不建立任何索引,不利于数据的有效关联和查询优化,无法很好地控制子表和父表的关联,C选项错误。 4. 最后看选项D: - 子表连接字段建立主索引不符合一对多关系的实际情况,因为子表中一个父表记录可能对应多个子表记录,子表连接字段值不唯一,不能建立主索引,D选项错误。 答案是B。
编辑于 2024-11-07 13:52:56 回复(0)