Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

MySQL: Ý nghĩa của AUTO_INCREMENT=5 trong truy vấn CREATE TABLE?

Trong MySQL, mệnh đề AUTO_INCREMENT=5 trong câu lệnh CREATE TABLE chỉ định rằng giá trị tự động tăng cho cột khóa chính sẽ bắt đầu từ 5 thay vì mặc định là 1.

Cú pháp

CREATE TABLE ten_bang (
    ten_cot kieu_du_lieu NOT NULL AUTO_INCREMENT,
    ...
    PRIMARY KEY (ten_cot)
) AUTO_INCREMENT=5;

Ví dụ minh họa

Trường hợp 1: Giá trị mặc định (bắt đầu từ 1)

mysql> CREATE TABLE demo_mac_dinh (
    -> Id INT NOT NULL AUTO_INCREMENT,
    -> Name VARCHAR(10),
    -> PRIMARY KEY(Id)
    -> );
Query OK, 0 rows affected (2.19 sec)

Chèn dữ liệu:

mysql> INSERT INTO demo_mac_dinh(Name) VALUES('John');
mysql> INSERT INTO demo_mac_dinh(Name) VALUES('James');
mysql> INSERT INTO demo_mac_dinh(Name) VALUES('Robert');
mysql> INSERT INTO demo_mac_dinh(Name) VALUES('Mike');

Kết quả:

+----+--------+
| Id | Name   |
+----+--------+
|  1 | John   |
|  2 | James  |
|  3 | Robert |
|  4 | Mike   |
+----+--------+

Trường hợp 2: Bắt đầu từ 5

mysql> CREATE TABLE demo_tu_5 (
    -> Id INT NOT NULL AUTO_INCREMENT,
    -> Name VARCHAR(10),
    -> PRIMARY KEY(Id)
    -> ) AUTO_INCREMENT=5;
Query OK, 0 rows affected (1.00 sec)

Chèn dữ liệu:

mysql> INSERT INTO demo_tu_5(Name) VALUES('Larry');
mysql> INSERT INTO demo_tu_5(Name) VALUES('David');
mysql> INSERT INTO demo_tu_5(Name) VALUES('Bob');
mysql> INSERT INTO demo_tu_5(Name) VALUES('Ricky');

Kết quả:

+----+-------+
| Id | Name  |
+----+-------+
|  5 | Larry |
|  6 | David |
|  7 | Bob   |
|  8 | Ricky |
+----+-------+

Như bạn thấy, cột Id bắt đầu từ 5 thay vì 1.