1

当我在表中插入一条记录时, auto_increment 字段的值可能是 1000,我知道有一个 auto_increment 计数器来决定值。

我使用命令:

SHOW VARIABLES LIKE 'auto_incre%'

它输出:</p>

auto_increment_increment    1
auto_increment_offset   1

所以我只想知道,如果有一种方法可以用来检查 auto_increment 计数器值。谢谢你的帮助。

4

2 回答 2

4
SHOW TABLE STATUS LIKE 'table_name'

为您提供作为 Auto_increment 的列。这是将在 INSERT 上添加的下一个值(通常是 id)。

例子:

$str_table = 'users';

$query = mysql_query("SHOW TABLE STATUS LIKE '{$str_table}'");
$row   = mysql_fetch_assoc($query);

$int_increment = $row['Auto_increment'];
于 2012-05-02T07:28:04.463 回答
1

该表的值显示在表 DDL 中。尝试SHOW CREATE TABLE yourTableName

例子:

CREATE TABLE `test`.`auto` (
`ID` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`NAME` CHAR( 1 ) NOT NULL 
) ENGINE = InnoDB;

INSERT INTO `test`.`auto` (`ID`, `NAME`) VALUES (NULL, 'A');
INSERT INTO `test`.`auto` (`ID`, `NAME`) VALUES (NULL, 'B');

SHOW CREATE TABLE test.auto;

CREATE TABLE `auto` (
  `ID` int(10) unsigned NOT NULL auto_increment,
  `NAME` char(1) collate utf8_bin NOT NULL,
  PRIMARY KEY  (`ID`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_bin
于 2012-05-02T07:27:10.937 回答