Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

ตั้งค่า Auto Increment เริ่มต้นที่ 001 พร้อมเลขศูนย์นำหน้าใน MySQL

การแสดง 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 ไม่อนุญาตค่าติดลบ