如何在 MYSQL 8 中查找表的下一个 AUTO_INCRMENT 值

Rah*_*hul 5 mysql auto-increment mysql-workbench mysql-8.0

我使用下面的查询来查找 MYSQL 5.7 中表的下一个 AUTO_INCRMENT 值

SELECT AUTO_INCREMENT
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_NAME = 'TABLENAME'
AND TABLE_SCHEMA = DATABASE( ); 
Run Code Online (Sandbox Code Playgroud)

但是,MYSQL 8 中的相同查询返回 NULL。我在我的应用程序中使用了上面的查询,它在 MYSQL 5.7 上运行良好,但在 MYSQL 8 上表现得很奇怪。

任何人都可以建议如何在 MYSQL 8 中找到下一个 AUTO_INCRMENT 值。

另外,如果有一个通用查询可以在两者(MYSQL 5.7 和 8)中使用,那么它将非常有帮助。

小智 -1

尝试使用

ALTER TABLE %1
ADD COLUMN id BIGINT NOT NULL AUTO_INCREMENT UNIQUE FIRST;
Run Code Online (Sandbox Code Playgroud)

创建列,然后查询

SELECT AUTO_INCREMENT
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_NAME = 'TABLENAME'
AND TABLE_SCHEMA = DATABASE( );
Run Code Online (Sandbox Code Playgroud)

应该返回正确的值。