Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 对于新记录,“自动编号”值的顺序不正确_Sql_Ms Access_Vba - Fatal编程技术网

Sql 对于新记录,“自动编号”值的顺序不正确

Sql 对于新记录,“自动编号”值的顺序不正确,sql,ms-access,vba,Sql,Ms Access,Vba,CPTY_PK是一个AUTUNUBER主键。我在两个表之间使用了左连接,并希望添加不在此表中的记录。当我运行查询时,添加了新记录,但自动编号从613增加到7679。我不知道它怎么能跳上千。我认为这是因为join,我想知道这背后的任何其他原因或解决方案 我使用的SQL查询: db.执行插入交易对手CPTY\U实体ID、CPTY\U描述_ &选择Ctpy\U实体\U Id、Ctpy\U实体\U法律\U Nm_ &从新CU向左加入D_交易对手上的D_交易对手。CPTY_ENTITY_ID=新CU.Ct

CPTY_PK是一个AUTUNUBER主键。我在两个表之间使用了左连接,并希望添加不在此表中的记录。当我运行查询时,添加了新记录,但自动编号从613增加到7679。我不知道它怎么能跳上千。我认为这是因为join,我想知道这背后的任何其他原因或解决方案

我使用的SQL查询:

db.执行插入交易对手CPTY\U实体ID、CPTY\U描述_ &选择Ctpy\U实体\U Id、Ctpy\U实体\U法律\U Nm_ &从新CU向左加入D_交易对手上的D_交易对手。CPTY_ENTITY_ID=新CU.Ctpy_ENTITY_ID

在Access 2000及更高版本中,自动编号字段可能会开始指定极值、负数甚至重复项。。。可能无法在受影响的表中保存新记录

-

这很可能是您的问题,杰出的艾伦·布朗将带领您完成补救措施,包括重新设定autokey值,但也可能改进您的数据库或应用程序设计,以防止根本问题

但是,还要确保“自动关键点”方法没有从增量更改为随机。我认为这可能是不可能的。。。看


我认为您的查询不是问题所在,因为CPTY_PK不在该查询中。原因可能是您在此处未显示的事件,但这看起来像是AuthonMember损坏的问题,我很难想象这是其他原因。

我尝试了Allenbrowne模块,但它给出的答案是0,即没有进行任何更改,甚至自动键都是递增的。谢谢你的回答,如果你有进一步的想法,请告诉我。到时候我会尝试做一些改变。这是因为加入?如果你尝试了我的建议,但仍然存在问题,你可能想取消接受这个答案!这是因为加入的原因吗请参阅我的编辑以回答。非常感谢。我不会过分担心它,因为自动编号PK只不过是一个代理密钥,对您的数据没有任何意义。我假设还有其他字段定义数据的唯一性。也就是说,你可以考虑压缩你的数据库,因为这将重置所有PK字段的种子值。嗨,你说的没错,我有字段定义了数据的唯一性,但是我需要强制地将相应的自动编号字段更新到另一个表。有什么办法吗?