Hàm LAST_INSERT_ID trong MySQL
Trong bài này mình sẽ hướng dẫn cách sử dụng hàm LAST_INSERT_ID
trong MySQL
thông qua cú pháp và ví dụ thực tế.
1. Mô tả
Hàm LAST_INSERT_ID
trả về giá trị AUTO_INCREMENT
đầu tiên được đặt bởi câu lệnh INSERT
hoặc UPDATE
gần đây nhất đã ảnh hưởng đến cột AUTO_INCREMENT
.
2. Cú pháp
Cú pháp của hàm LAST_INSERT_ID
trong MySQL
là:
LAST_INSERT_ID( [expression] )
3. Version
Hàm LAST_INSERT_ID
có thể được sử dụng trong các phiên bản sau của MySQL
:
Bài viết này được đăng tại [free tuts .net]
- MySQL 5.7, MySQL 5.6, MySQL 5.5, MySQL 5.1, MySQL 5.0, MySQL 4.1, MySQL 4.0, MySQL 3.23
4. Ví dụ
Ví dụ chúng ta có bảng SinhVien, có cột mssv là AUTO_INCREMENT
CREATE TABLE SinhVien ( mssv INT AUTO_INCREMENT NOT NULL PRIMARY KEY, ten VARCHAR(100) NOT NULL, noisinh VARCHAR(200) );
Dữ liệu của bảng SinhVien như sau:
mssv | ten | noisinh |
1 | Nguyen Van A | Thoi Binh - Ca Mau |
2 | Nguyen Van B | Vi Thuy - Hau Giang |
3 | Nguyen Van C | Quan 3 - Ho Chi Minh |
4 | Nguyen Van D | Ninh Kieu - Can Tho |
Chúng ta thêm 1 dòng mới vào bảng SinhVien
INSERT INTO SinhVien (ten, noisinh) VALUES ('Nguyen Van E', 'Cai Nuoc - Ca Mau');
Kết quả sau khi thêm 1 dòng mới:
mssv | ten | noisinh |
1 | Nguyen Van A | Thoi Binh - Ca Mau |
2 | Nguyen Van B | Vi Thuy - Hau Giang |
3 | Nguyen Van C | Quan 3 - Ho Chi Minh |
4 | Nguyen Van D | Ninh Kieu - Can Tho |
5 | Nguyen Van E | Cai Nuoc - Ca Mau |
Chúng ta thực thi hàm LAST_INSERT_ID()
, kết quả như sau:
mysql> SELECT LAST_INSERT_ID(); Ket qua: 5