Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak uzyskać aktualny numer sekwencji Auto_Increment dla tabeli MySQL / MariaDB?

Większość tabel w bazie danych ma kolumnę z numerem sekwencji autoinkrementacji, która służy jako unikalny identyfikator dla wierszy danych. Wartość auto_increment jest zawsze ustawiana na wzrost, gdy do tabeli dodawane są nowe dane. Z biegiem czasu numer sekwencyjny wartości auto_increment dla unikalnego identyfikatora może nie być już zsynchronizowany z całkowitą liczbą wierszy w tabeli, szczególnie w przypadku wielu operacji usuwania lub scalania.

Ten samouczek pokazuje, jak sprawdzić i uzyskać bieżącą wartość auto_increment dla tabeli. Zwróć uwagę, że wartość auto_increment pokazywana przez bazę danych jest kolejnym numerem sekwencyjnym NEXT, który ma być używany przez bazę danych, tj. wstawiany z nowym wierszem.

Metoda 1

Uruchom następujące zapytanie:

SHOW TABLE STATUS FROM `DatabaseName` WHERE `name` LIKE 'TableName' ;

Zastąp DatabaseNameTableName z rzeczywistą nazwą tabeli. Wartość auto_increment jest zwracana w jednej z kolumn.

Metoda 2

Uruchom następujące zapytanie:

SELECT `AUTO_INCREMENT`
FROM  INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = 'DatabaseName'
AND   TABLE_NAME   = 'TableName';

Zastąp DatabaseNameTableName z rzeczywistą nazwą tabeli. Zapytanie zwraca bezpośrednio wartość auto_increment.

Metoda 3

Uruchom następujące zapytanie:

SHOW CREATE TABLE TableName;

Zastąp nazwa tabeli z rzeczywistą nazwą tabeli. Zapytanie zwraca zapytanie CREATE TABLE dla tabeli, z wartością auto_increment pokazaną na dole.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Neo4j - Utwórz indeks za pomocą Cypher

  2. Jak wybrać rekordy bez wartości NULL w MySQL?

  3. Pobierz najnowszy wiersz dla podanego identyfikatora

  4. Jak ustawić ustawienia regionalne dla bieżącego połączenia w MySQL?

  5. Jak przekonwertować czas UTC na czas lokalny w MySQL?