1

我试图在 mysql 中使用 php 获取下一个自动增量编号。我试过这样:

<?
$q=mysql_query("SELECT * FROM `users`");
$next_auto_inc=mysql_num_rows($q)+1;
?>

但是,当任何行被删除时,这不起作用。我希望你明白我的意思。我怎样才能使用 php 做到这一点?

4

2 回答 2

2

你不能这样做来获取表数据。您必须获取表状态才能使用 php.ini 获取自动增量编号。而且,您可以执行以下操作:

$q = mysql_query("SHOW TABLE STATUS LIKE 'test'");
$row = mysql_fetch_assoc($q);
$next_increment = $row['Auto_increment'];
echo "next increment number: [$next_increment]";

希望这可以帮助 :)

[来源]

于 2012-11-14T04:40:22.840 回答
1

假设您将user_id列作为主键,您也可以尝试以下操作:

$q = mysql_query('SELECT MAX(user_id) as user_id from `users`');
$row = mysql_fetch_assoc($q);
$next_auto_inc = $row['user_id'] + 1;
于 2012-11-14T05:36:55.363 回答