使用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中文網其他相關文章!