Access键值冲突的三种原因及应对办法

作者:清风拂面 | 创建时间: 2023-04-25
本文重点介绍在执行Access追加查询时,遇到键值冲突错误的三种可能原因及应对办法,对于更新查询也可参照分析。对于Access初学者,经常会碰到系统的出错提示,但又不知所云。本人总结10多年的数据库应用,将常见问题“键值冲突”的三种常见原因...
Access键值冲突的三种原因及应对办法

操作方法

原因一,追加表中本身就存在重复键值。如图,订单表是被追加数据进去的表,主键是订单号。主键是不可为空不可重复的。这里的追加表中订单号字段有2条记录重复了(订单号记录为:D0021)。

应对一,删除追加表的重复记录。经过甄别,第2条和第4条记录是完全相同的,删除第4条记录即可。

方法/步骤2

原因二,追加表与被追加表有重复键值。如图,订单表已经存有D0012的订单号记录(第3条记录),而追加表也有这个订单号(也是第3条记录)。

应对二,删除重复记录。经过甄别,追加表和被追加表的这条记录是完全相同的。可删除追加表记录,也可以删除被追加表的这条记录(如图是后者)。

方法/步骤3

原因三,外键缺少记录。如图,订单表和供应商表设置了关系,供应商表的主键供应商与订单表供应商字段作了关联,实施参照完整性,所以订单表的供应商字段是外键。追加表中有一条含有“戊供应商”的记录,而供应商表没有对应的记录,这也是会造成键值冲突的。

应对三,补值。如图,在供应商表补充“戊供应商”的记录。

温馨提示

本范例是根据追加查询错误制作的,对于更新查询出现的键值冲突,也可参考。
点击展开全文

更多推荐