ใช้คอลัมน์ AUTO_INCREMENT จาก information_schema.TABLES เพื่อดูค่า ID ถัดไปที่จะถูกกำหนด
สร้างตารางมี Auto Increment
mysql> CREATE TABLE NextIdDemo (
-> id INT AUTO_INCREMENT,
-> PRIMARY KEY(id)
-> );
mysql> INSERT INTO NextIdDemo VALUES (1), (2), (3);
ข้อมูลปัจจุบันมี ID 1, 2, 3 ดังนั้น ID ถัดไปควรเป็น 4
Query ดูค่า Auto Increment ถัดไป
SELECT AUTO_INCREMENT FROM information_schema.TABLES WHERE TABLE_SCHEMA = 'yourDatabaseName' AND TABLE_NAME = 'yourTableName';
ตัวอย่างจริง (database ชื่อ business):
mysql> SELECT AUTO_INCREMENT
-> FROM information_schema.TABLES
-> WHERE TABLE_SCHEMA = 'business'
-> AND TABLE_NAME = 'NextIdDemo';
ผลลัพธ์:
+----------------+ | AUTO_INCREMENT | +----------------+ | 4 | +----------------+
วิธีอื่น: ใช้ LAST_INSERT_ID()
หลังจาก INSERT แล้ว ใช้ SELECT LAST_INSERT_ID(); จะได้ ID ที่เพิ่ง Insert ไป (ไม่ใช่ ID ถัดไป)
ข้อควรระวัง: ค่า AUTO_INCREMENT อาจกระโดดหากมีการ DELETE แถวสุดท้าย หรือ Restart Server ใน InnoDB