自动编号字段有重复项

Posted

技术标签:

【中文标题】自动编号字段有重复项【英文标题】:auto number field has duplicates 【发布时间】:2016-03-29 14:30:22 【问题描述】:

这怎么可能? 我有一个表 Contacts,其中有一个字段 contactId,它是 Autonumber 类型。我对其进行了以下查询:

SELECT ContactId
FROM Contacts
GROUP BY contactId
HAVING Count(ContactId) > 1

我有 9 条记录。

【问题讨论】:

删除包含重复值的行,然后将ContactId作为主键。那么就没有更多的重复了。 几个原因:allenbrowne.com/ser-40.html 【参考方案1】:

这是可能的,因为您可以使用INSERT SQL 在自动编号字段中插入任​​何值。在此访问之后将生成下一个数字 = 最后插入 + 1,但不是 = 最大数字 + 1。 为了避免这种情况,请向自动编号字段添加主键或唯一键。

【讨论】:

如何添加主键?我认为让它成为自动编号就是让它成为主键。 不,只是添加新的自动编号字段不会使其成为主键。如果您使用向导创建表,则会发生这种情况。在表格设计中,只需选择您的字段并单击功能区上的设计->主键 我现在无法制作新表。如何查看 ContactId 是否为主键?在设计视图中,一般来说,新的价值是增量。这不意味着它是主键吗?如果没有,我该如何更改? 在设计视图中,您应该会在 ContactID 字段旁边看到一个黄色钥匙标志。如果不这样做,请单击功能区上的主键按钮,它会将主键添加到所选字段

以上是关于自动编号字段有重复项的主要内容,如果未能解决你的问题,请参考以下文章

如何重置 Access 表的自动编号字段? (它不是从 1 开始的)[重复]

自动填写表单字段[重复]

怎么删除ACCESS中的重复记录 只保留一条

在sql数据库,我插入一条数据有误,编号错了,和前面的重复,要怎么修改呢?

visual studio编写c#项目,建立sql数据库,如何让表中某一列的值自动生成,不重复,例如从1开始自动加1。

修复自动增量mysql [重复]