การแสดง Auto Increment แบบมีเลขศูนย์นำหน้า (Zero-fill)
ใช้ ZEROFILL ร่วมกับ UNSIGNED และกำหนดความกว้างตัวเลข เช่น INT(3) แล้วเปลี่ยนคอลัมน์เป็น PRIMARY KEY AUTO_INCREMENT
รูปแบบคำสั่ง ALTER TABLE
ALTER TABLE yourTableName
CHANGE yourColumnName yourColumnName INT(3) UNSIGNED ZEROFILL NOT NULL AUTO_INCREMENT PRIMARY KEY;
ตัวอย่าง: สร้างตารางและเปลี่ยนโครงสร้าง
mysql> CREATE TABLE DemoTable1958 (UserId INT, UserName VARCHAR(20));
Query OK, 0 rows affected (0.00 sec)
mysql> ALTER TABLE DemoTable1958
-> CHANGE UserId UserId INT(3) UNSIGNED ZEROFILL NOT NULL AUTO_INCREMENT PRIMARY KEY;
Query OK, 0 rows affected (0.00 sec)
ตรวจสอบโครงสร้างตาราง
mysql> DESC DemoTable1958;
+----------+--------------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+--------------------------+------+-----+---------+----------------+
| UserId | int(3) unsigned zerofill | NO | PRI | NULL | auto_increment |
| UserName | varchar(20) | YES | | NULL | |
+----------+--------------------------+------+-----+---------+----------------+
เพิ่มข้อมูลและแสดงผล
mysql> INSERT INTO DemoTable1958(UserName) VALUES('Chris');
mysql> INSERT INTO DemoTable1958(UserName) VALUES('David');
mysql> SELECT * FROM DemoTable1958;
+--------+----------+
| UserId | UserName |
+--------+----------+
| 001 | Chris |
| 002 | David |
+--------+----------+
คำอธิบาย: INT(3) ZEROFILL จะแสดงตัวเลข 3 หลักเติมศูนย์ด้านหน้า เช่น 001, 002... UNSIGNED ไม่อนุญาตค่าติดลบ