Как сгенерировать следующий номер автоматического увеличения в mysql, используя php?

Я пытался получить следующий номер автоинкремента в mysql, используя php. Я пробовал так:

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

Но это, когда любая строка удалена, не работает. Надеюсь, ты понял, что я имею в виду. Как это сделать, используя php?

Вы не можете сделать это, чтобы получить данные таблицы. Вы должны получить статус таблицы, чтобы получить номер автоматического увеличения, используя php. И это, вы можете сделать что-то вроде этого:

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

Надеюсь это поможет 🙂

[ Источник ]

Предполагая, что у вас есть столбец 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;