Sequence ใน MySQL คืออะไร?
Sequence = list of integers generated ascending order เริ่มจาก 1 (หรือ 0 ถ้าระบุ) หลาย applications ต้องการ sequences สำหรับ unique identification numbers
ตัวอย่าง
Customer ID ใน CRM, Employee numbers ใน HR, Equipment numbers ใน service management
สร้าง sequence อัตโนมัติ: ตั้ง AUTO_INCREMENT attribute ให้ column (typically primary key)
Rules
- 1 AUTO_INCREMENT column ต่อ table (integer typically)
- ต้อง indexed (PRIMARY KEY หรือ UNIQUE)
- ต้อง NOT NULL constraint
- Set attribute → MySQL auto-add NOT NULL
Create MySQL Sequence
CREATE TABLE tableName (
emp_no INT AUTO_INCREMENT PRIMARY KEY,
first_name VARCHAR(50),
last_name VARCHAR(50)
)
AUTO_INCREMENT Column Behavior
- Starting value ปกติ 1 เพิ่ม 1 เมื่อ insert NULL หรือ omit value ใน INSERT
- Last generated sequence: LAST_INSERT_ID() function
- Last sequence unique across sessions
- Connection อื่น generate sequence → ได้จาก LAST_INSERT_ID()
- Insert row ใหม่ระบุ sequence value → MySQL insert sequence number หากไม่มีใน column