Access键值冲突该怎么处理
发表时间:2023-08-14 来源:明辉站整理相关软件相关文章人气:
[摘要]虽然本文的制作环境是Access2016,但操作与2010版甚至2003版是一致的。如图,错误提示,是有2条记录由于键值冲突无法追加。这个追加查询是追加4条记录的,如果按“是&a...
虽然本文的制作环境是Access2016,但操作与2010版甚至2003版是一致的。如图,错误提示,是有2条记录由于键值冲突无法追加。这个追加查询是追加4条记录的,如果按“是”就只追加2条,如果按“否”就不执行追加查询(追加0条)。
方法一:
原因三,外键缺少记录。如图,订单表和供应商表设置了关系,供应商表的主键供应商与订单表供应商字段作了关联,实施参照完整性,所以订单表的供应商字段是外键。追加表中有一条含有“戊供应商”的记录,而供应商表没有对应的记录,这也是会造成键值冲突的。
应对三,补值。如图,在供应商表补充“戊供应商”的记录。
方法二:
原因一,追加表中本身就存在重复键值。如图,订单表是被追加数据进去的表,主键是订单号。主键是不可为空不可重复的。这里的追加表中订单号字段有2条记录重复了(订单号记录为:D0021)。
应对一,删除追加表的重复记录。经过甄别,第2条和第4条记录是完全相同的,删除第4条记录即可。
方法三:
原因二,追加表与被追加表有重复键值。如图,订单表已经存有D0012的订单号记录(第3条记录),而追加表也有这个订单号(也是第3条记录)。
应对二,删除重复记录。经过甄别,追加表和被追加表的这条记录是完全相同的。可删除追加表记录,也可以删除被追加表的这条记录(如图是后者)。
注意事项:本范例是根据追加查询错误制作的,对于更新查询出现的键值冲突,也可参考。
Microsoft Access在很多地方得到广泛使用,例如小型企业,大公司的部门。