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

Lấy ID sau khi INSERT vào MySQL bằng Python


Giới thiệu

Khi chèn dữ liệu vào bảng MySQL bằng câu lệnh INSERT, để lấy ID của hàng vừa chèn, sử dụng thuộc tính lastrowid của đối tượng con trỏ.

Điều kiện tiên quyết:

  • Cột ID phải là khóa chính (PRIMARY KEY)
  • Cột ID phải tự động tăng (AUTO_INCREMENT)

Cú pháp

cursor.lastrowid

Các bước thực hiện

  1. Import mysql.connector
  2. Thiết lập kết nối bằng connect()
  3. Tạo đối tượng con trỏ qua cursor()
  4. Viết truy vấn INSERT
  5. Thực thi truy vấn bằng execute()
  6. Lấy ID bằng cursor.lastrowid
  7. Commit thay đổi bằng db.commit()
  8. Đóng kết nối

Ví dụ minh họa

Bảng Students (id là PK, AUTO_INCREMENT):

+--------+---------+-----------+------------+
| id     | Name    | City      | Marks      |
+--------+---------+-----------+------------+
| 1      | Karan   | Amritsar  | 95         |
| 2      | Sahil   | Amritsar  | 93         |
| 3      | Kriti   | Batala    | 88         |
| 4      | Amit    | Delhi     | 90         |
+--------+---------+-----------+------------+
import mysql.connector

db = mysql.connector.connect(
    host="your_host",
    user="your_username",
    password="your_password",
    database="database_name"
)
cursor = db.cursor()
# Chèn hàng mới
query = "INSERT INTO Students VALUES(5, 'Priya', 'Amritsar', 90)"
cursor.execute(query)
db.commit()
# In ID của hàng vừa chèn
print(cursor.lastrowid)
db.close()

Kết quả

5