首頁 >資料庫 >mysql教程 >如何使用Python在MySQL中INSERT後檢索自動產生的鍵?

如何使用Python在MySQL中INSERT後檢索自動產生的鍵?

Susan Sarandon
Susan Sarandon原創
2024-12-16 18:29:12697瀏覽

How to Retrieve Auto-Generated Keys After INSERT in MySQL with Python?

使用Python 在MySQL 中檢索INSERT 語句後自動產生的金鑰

使用Python 在MyMy 作業時,通常執行INSERT 操作時,通常執行INSERT需要檢索新插入行的主鍵或自動產生的ID。這對於在後續操作中引用插入的行或維護行的唯一性非常有用。

使用cursor.lastrowid

Python MySQL Connector 提供了一個遊標初始化後,可用於執行 SQL 語句並擷取結果資料的物件。執行 INSERT 語句後,cursor.lastrowid 屬性包含新插入行的主鍵或自動產生的 ID。

例如,請考慮以下程式碼:

import mysql.connector

conn = mysql.connector.connect(...)
cursor = conn.cursor()
cursor.execute("INSERT INTO mytable(height) VALUES(%s)", (height))
inserted_id = cursor.lastrowid

在此程式碼中,將擷取lastrowid 屬性並將其儲存在inserted_id 變數中。這個ID代表新插入行的主鍵。

使用connection.insert_id()

或者,連接物件本身提供一個insert_id屬性來傳回ID透過連線插入的最後一行。即使遊標關閉後,該屬性也可用。

以下程式碼示範如何使用connection.insert_id():

import mysql.connector

conn = mysql.connector.connect(...)
cursor = conn.cursor()
cursor.execute("INSERT INTO mytable(height) VALUES(%s)", (height))
inserted_id = conn.insert_id()

無論使用哪種方法,檢索到的insert_id或lastrowid 可用於識別資料庫中新插入的行。

以上是如何使用Python在MySQL中INSERT後檢索自動產生的鍵?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn