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

Có thể bỏ qua cột AUTO_INCREMENT khi INSERT vào MySQL không?

Nếu cột đầu tiên là AUTO_INCREMENT, bạn có thể bỏ qua cột đó bằng cách truyền NULL hoặc không liệt kê cột trong câu lệnh INSERT. Tạo bảng:

mysql> CREATE TABLE DemoTable (
    StudentId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    StudentFirstName VARCHAR(100),
    StudentAge INT
); Query OK, 0 rows affected (0.60 sec)

Chèn dữ liệu, truyền NULL cho cột StudentId:

mysql> INSERT INTO DemoTable VALUES(NULL,'Robert',21); Query OK, 1 row affected (0.21 sec)
mysql> INSERT INTO DemoTable VALUES(NULL,'Sam',22);   Query OK, 1 row affected (0.18 sec)
mysql> INSERT INTO DemoTable VALUES(NULL,'Bob',24);   Query OK, 1 row affected (0.18 sec)
mysql> INSERT INTO DemoTable VALUES(NULL,'Carol',20); Query OK, 1 row affected (0.14 sec)

Hiển thị dữ liệu (StudentId tự động gán 1,2,3,4):

mysql> SELECT * FROM DemoTable;

Kết quả:

+-----------+------------------+------------+
| StudentId | StudentFirstName | StudentAge |
+-----------+------------------+------------+
| 1         | Robert           | 21         |
| 2         | Sam              | 22         |
| 3         | Bob              | 24         |
| 4         | Carol            | 20         |
+-----------+------------------+------------+
4 rows in set (0.00 sec)

Cách khác: Chỉ định tên cột: INSERT INTO DemoTable(StudentFirstName,StudentAge) VALUES('Name',25); — không cần nhắc đến cột AUTO_INCREMENT.