防止重复键更新时自动增量

时间:2015-09-25 16:33:14

标签: mysql perl

我正在使用以下查询填充数据库并返回最后一个插入ID或ID(如果记录已存在)。它在我的Perl脚本中工作正常,但是我注意到即使存在导致ID字段中存在间隙的记录,自动增量字段仍然会上升。有没有解决的办法?我查看了其他示例,但查询并不完全相同。

INSERT INTO `testTable` (`testA`, `testB`) VALES ("test1", "test2")
  ON DUPLICATE KEY UPDATE `Id` = LAST_INSERT_ID(`Id`);

Perl我用以下内容获取了ID:

$dbh->do($sql);
$blockInfo = $dbh->{mysql_insertid};

感谢您的帮助或建议。我想过只做一个if语句查找字段并返回Id,如果它在那里,如果没有插入但我试图最小化我使用的查询量。

0 个答案:

没有答案