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

วิธีสร้างและใช้ Sequence ใน MySQL


MySQL ไม่มีออบเจ็กต์ Sequence แบบ Oracle/PostgreSQL ใช้ AUTO_INCREMENT แทน

สร้างตารางพร้อม AUTO_INCREMENT:

mysql> CREATE TABLE SequenceDemo ( SequenceId INT AUTO_INCREMENT, PRIMARY KEY(SequenceId) ); Query OK, 0 rows affected (1.22 sec)

Insert ไม่ต้องระบุค่า SequenceId:

mysql> INSERT INTO SequenceDemo VALUES (); -- ทำซ้ำ 5 ครั้ง
mysql> SELECT * FROM SequenceDemo;
+------------+
| SequenceId |
+------------+
| 1          |
| 2          |
| 3          |
| 4          |
| 5          |
+------------+

เปลี่ยนค่าเริ่มต้นถัดไปเป็น 500:

mysql> ALTER TABLE SequenceDemo AUTO_INCREMENT = 500; Query OK, 0 rows affected (0.17 sec)
mysql> INSERT INTO SequenceDemo VALUES (); -- ทำซ้ำ 3 ครั้ง
mysql> SELECT * FROM SequenceDemo;
+------------+
| SequenceId |
+------------+
| 1          |
| 2          |
| 3          |
| 4          |
| 5          |
| 500        |
| 501        |
| 502        |
+------------+

สรุป: ใช้ AUTO_INCREMENT บน Primary Key เป็น Sequence แบบง่าย สามารถตั้งค่าเริ่มต้นได้ด้วย ALTER TABLE