สมมติว่าเรามีตารางและตอนนี้มีความจำเป็นต้องเพิ่ม AUTO_INCREMENT ในชื่อคอลัมน์ ให้ใช้คำสั่ง MODIFY
ที่นี่ เราจะสร้างตารางสาธิตก่อน
mysql> สร้างตาราง AddingAutoIncrement -> ( -> Id int, -> Name varchar(200), -> Primary key(Id) -> );Query OK, 0 แถวได้รับผลกระทบ (0.47 วินาที)
เราได้สร้างตารางด้านบนแล้ว และตอนนี้ให้เราเปลี่ยนตารางเพื่อเพิ่ม AUTO_INCREMENT ในชื่อคอลัมน์ 'Id' ไวยากรณ์มีดังนี้ −
แก้ไขตาราง yourTableNamet แก้ไข yourColumnName int AUTO_INCREMENT;
ใช้ไวยากรณ์ด้านบนเพื่อเพิ่ม AUTO_INCREMENT แบบสอบถามมีดังนี้
mysql> แก้ไขตาราง AddingAutoIncrement แก้ไข Id int AUTO_INCREMENT ตกลง สืบค้น 0 แถวได้รับผลกระทบ (1.19 วินาที) บันทึก:0 รายการซ้ำ:0 คำเตือน:0
ด้านบน เราได้เพิ่ม "AUTO_INCREMENT" ในชื่อคอลัมน์ "Id" ให้เราตรวจสอบสิ่งเดียวกันด้วยความช่วยเหลือของคำสั่ง DESC แบบสอบถามมีดังนี้ −
mysql> อธิบาย AddingAutoIncrement;
ตัวอย่างผลลัพธ์
<ก่อนหน้า>+-------+--------------+------+----+---------+ -----------------+| สนาม | พิมพ์ | Null | คีย์ | ค่าเริ่มต้น | พิเศษ |+-------+--------------+------+ -----+---------+- ---------------+| รหัส | int(11) | ไม่ | PRI | NULL | auto_increment || ชื่อ | varchar(200) | ใช่ | | NULL | |+-------+--------------+------+----+---------+-- --------------+2 แถวในชุด (0.00 วินาที)ดูผลลัพธ์ด้านบนและชื่อคอลัมน์ 'พิเศษ' ในชื่อคอลัมน์ 'พิเศษ' มีคำสำคัญ auto_increment นี่บอกว่าเราเพิ่มคีย์เวิร์ดสำเร็จแล้ว
ตอนนี้ฉันกำลังจะแทรกระเบียนและตรวจสอบว่าแถวนั้นเพิ่มขึ้นทีละหนึ่งหรือไม่ แบบสอบถามมีดังนี้ −
mysql> แทรกลงในค่า AddingAutoIncrement(Name) ('John');Query OK, 1 แถวได้รับผลกระทบ (0.20 วินาที)mysql> แทรกลงในค่า AddingAutoIncrement(Name) ('Smith');Query OK, 1 แถวได้รับผลกระทบ ( 0.12 วินาที) mysql> แทรกลงในค่า AddingAutoIncrement (ชื่อ) ('Bob'); ตกลง ตกลง 1 แถวได้รับผลกระทบ (0.10 วินาที)
แสดงระเบียนทั้งหมดโดยใช้คำสั่ง SELECT
mysql> เลือก *จาก AddingAutoIncrement;
ต่อไปนี้เป็นผลลัพธ์
<ก่อนหน้า>+----+-------+| รหัส | ชื่อ |+---+-------+| 1 | จอห์น || 2 | สมิธ || 3 | Bob |+----+-------+3 แถวในชุด (0.00 วินาที)ดังที่คุณเห็นในผลลัพธ์ด้านบน แถวจะเพิ่มขึ้น 1