如何防止在 Table 中重复使用已删除的主键值?

How to Prevent Reuse of Deleted Primary Key Values in Table?

我有一个 table,主键设置为自动递增。有时,记录会被删除。发生这种情况时,我不想重复使用已删除的 'recID' 值......但事情就是这样!

例如在下面ph​​pMyAdmin导出的table定义中,table应该开始编号在 19 但它显示 13.

如何防止重复使用已删除的主键值?

CREATE TABLE scans (
  recID` int(11) NOT NULL,
  mac varchar(50) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

ALTER TABLE scans
  ADD PRIMARY KEY (recID);

ALTER TABLE scans
  MODIFY recID int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=13;

唯一万无一失的解决方案是不删除行。或者至少不要删除具有最高 auto-increment 值的行。