我按照这些 说明使用 phpMyAdmin 将 auto_increment 的值重置为最后一个最大值。
例子:
如果我有这个表和数据:
DROP TABLE IF EXISTS `Tbl_Lis_Agencias`;
CREATE TABLE IF NOT EXISTS `Tbl_Lis_Agencias` (
`IdAgency` int(3) UNSIGNED ZEROFILL NOT NULL AUTO_INCREMENT,
`AgencyCodU` int(3) UNSIGNED ZEROFILL NOT NULL DEFAULT '000',
`AgencyName` varchar(40) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,
`Agency_Order` int UNSIGNED DEFAULT NULL,
`AgencyStatus` int UNSIGNED NOT NULL DEFAULT '1',
PRIMARY KEY (`IdAgency`),
UNIQUE KEY `IdAgency` (`IdAgency`),
UNIQUE KEY `Agency_Order` (`Agency_Order`),
UNIQUE KEY `AgencyName` (`AgencyName`),
KEY `xAgencyStatus` (`AgencyStatus`)
) ENGINE=InnoDB AUTO_INCREMENT=12345 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
INSERT INTO `Tbl_Lis_Agencias` VALUES
(001, 001, 'Panama', 1, 1),
(002, 020, 'Aguadulce', 2, 1),
(003, 080, 'David', 3, 1),
(004, 010, 'Vacamonte', 4, 1),
(005, 060, 'Prueba', 5, 1);
如果我运行这个:
phpMyAdmin 说这是一个成功的更新:
但是当我切换到操作选项卡时,我又看到了:
我不想做的,我被迫去终端运行这个:
ALTER TABLE Tbl_Lis_Agencias AUTO_INCREMENT = 5
然后我再次查看操作选项卡
为什么第一个示例中的操作选项卡没有更新?
这篇文章中的解决方案没有用,我必须通过 phpMyAdmin 完成所有操作,而不是通过终端。
更新
我检查了 phpmyadmin 是否显示幽灵值;与这篇文章相关:https ://github.com/phpmyadmin/phpmyadmin/issues/16378