Sử dụng ALTER TABLE ... AUTO_INCREMENT = giaTri để đặt giá trị khởi đầu cho khóa chính tự động tăng.
Ví dụ
Tạo bảng chỉ có cột AUTO_INCREMENT:
mysql> create table DemoTable (
UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY
);
Query OK, 0 rows affected (0.72 sec)Đặt AUTO_INCREMENT bắt đầu từ 10000:
mysql> alter table DemoTable AUTO_INCREMENT=10000; Query OK, 0 rows affected (0.31 sec) Records: 0 Duplicates: 0 Warnings: 0
Chèn 4 bản ghi (không chỉ định UserId):
mysql> insert into DemoTable values(); mysql> insert into DemoTable values(); mysql> insert into DemoTable values(); mysql> insert into DemoTable values();
Kết quả UserId: 10000, 10001, 10002, 10003
+--------+ | UserId | +--------+ | 10000 | | 10001 | | 10002 | | 10003 | +--------+
Lưu ý:
- Giá trị phải lớn hơn MAX(id) hiện có (nếu bảng đã có data)
- Chỉ ảnh hưởng các INSERT sau lệnh ALTER
- MyISAM: giá trị lưu trong file .MYI. InnoDB: lưu trong data dictionary (từ 8.0) hoặc tự tính từ MAX(id) khi restart