没有插入的mysql自动增量

时间:2012-04-23 12:11:15

标签: mysql

我有一个带有自动增量字段的mysql表。我使用自动增量计数器作为数据库中的id生成器。

我需要一种方法来递增计数器,获取新数字但不插入任何数据。

有没有容易做到的?

3 个答案:

答案 0 :(得分:2)

如果您将它用作ID生成器,那么(除了更改表格之外)您必须插入一些内容才能获得下一个值。

在不插入任何数据的情况下执行此操作的最简单方法是执行INSERT,然后调用LAST_INSERT_ID,然后发出ROLLBACK。这将回滚插入,但下一个ID仍将增加。

答案 1 :(得分:0)

使用此查询获取表的状态

SHOW TABLE STATUS LIKE 'table_name'

会有一个字段Auto_increment,其中包含您想要的值

使用PHP提取值

$result = mysql_query("SHOW TABLE STATUS LIKE 'table_name'");
$row = mysql_fetch_assoc($result);
$nextAutoIncrement = $row['Auto_increment'];

答案 2 :(得分:-1)

我认为您想要更改表格,以便您可以使用此

ALTER TABLE table_name AUTO_INCREMENT = id+1

此处id将是您的自动增量字段。 但是,自动增量字段相对于该列中的最大值递增。