MySql8自动递增一直显示0
版本:MySQL8.0.25
我新建一张测试表test:
CREATE TABLE `test` (
`id` int unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL DEFAULT '',
PRIMARY KEY (`id`)
) ENGINE=InnoDB;
然后我往里面插入数据:
INSERT INTO `rrweb`.`test`(`name`) VALUES ('a');
INSERT INTO `rrweb`.`test`(`name`) VALUES ('a');
INSERT INTO `rrweb`.`test`(`name`) VALUES ('b');
但是在navicat上的显示:
一直是0,不知道是平台问题还是mysql哪边配置的不对。其他MySQL5.6的表是没有这种情况的。
是不是navicat的问题?用命令行看一下呢?
你用
navicat
往表里面加数据,看看id
对不对,我感觉是navicat
的锅,看看navicat
版本是不是太老了刷新一下你的表,然后在看表详情。
把表的自增设置成1开始
那就是 navicat 版本太旧了,对 mysql8 的数据表信息解析不完全了,考虑升级下navicat
用mysql cli查一下看一下
应该是Navicat问题
因为mysql8比较新,有些版本会有兼容小bug,说下我之前遇到的,之前版本 12.1.12 ,mysql 8.0,我导出表sql结构,结果发现如果id是 UNSIGNED bigint,那么导出的 id 列,会丢失 AUTO_INCREMENT 的自增信息,后来我升级到 12.1.28 就不会了