Я пытался получить следующий номер автоинкремента в 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;