Computer >> Máy Tính >  >> Lập trình >> MySQL

Nhận ID khóa bản ghi mới từ truy vấn chèn MySQL?

Chúng ta có thể lấy khóa bản ghi mới với sự trợ giúp của hàm LAST_INSERT_ID () từ MySQL. Đầu tiên, chúng ta sẽ tạo một bảng và để chèn bản ghi, chúng ta sẽ sử dụng LAST_INSERT_ID ().

Hãy để chúng tôi tạo một bảng với sự trợ giúp của lệnh create.

Truy vấn như sau -

mysql> create table LastInsertRecordIdDemo
   -> (
   -> id int auto_increment,
   -> value varchar(100),
   -> primary key(id)
   -> );
Query OK, 0 rows affected (0.52 sec)

Sau khi tạo bảng, chúng tôi sẽ chèn các bản ghi và thiết lập nó bằng cách sử dụng hàm LAST_INSERT_ID ().

mysql> insert into LastInsertRecordIdDemo values(1,'Low');
Query OK, 1 row affected (0.10 sec)

mysql> insert into LastInsertRecordIdDemo values(LAST_INSERT_ID(),'High');
Query OK, 1 row affected (0.11 sec)

Bây giờ chúng ta có thể hiển thị tất cả các bản ghi với sự trợ giúp của câu lệnh select.

Truy vấn như sau -

mysql> select *from LastInsertRecordIdDemo;

Sau đây là kết quả.

+----+-------+
| id | value |
+----+-------+
|  1 | Low   |
|  2 | High  |
+----+-------+
2 rows in set (0.00 sec)

Bây giờ để chèn các bản ghi, chúng ta cần thêm 1 vào hàm LAST_INSERT_ID (). Truy vấn như sau -

mysql> insert into LastInsertRecordIdDemo values(LAST_INSERT_ID()+1,'Medium');
Query OK, 1 row affected (0.08 sec)

Bây giờ chúng ta có thể hiển thị tất cả các bản ghi với sự trợ giúp của câu lệnh select.

mysql> select *From LastInsertRecordIdDemo;

Sau đây là kết quả.

+----+--------+
| id | value  |
+----+--------+
|  1 | Low    |
|  2 | High   |
|  3 | Medium |
+----+--------+
3 rows in set (0.00 sec)