Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Mendapatkan Kunci Utama yang Dijana Auto Selepas INSERT dalam MySQL menggunakan Python?

Bagaimana untuk Mendapatkan Kunci Utama yang Dijana Auto Selepas INSERT dalam MySQL menggunakan Python?

DDD
DDDasal
2024-12-02 14:30:13466semak imbas

How to Retrieve the Auto-Generated Primary Key After an INSERT in MySQL using Python?

Mengambil semula Kunci Utama selepas Memasukkan ke dalam Pangkalan Data MySQL dengan Python

Apabila memasukkan data ke dalam pangkalan data MySQL menggunakan Python, anda mungkin mahu mendapatkan semula kunci utama yang dijana untuk baris yang baru dibuat. Begini cara anda boleh melakukannya:

Menggunakan cursor.lastrowid

Atribut cursor.lastrowid mengandungi ID baris terakhir yang disisipkan menggunakan objek kursor itu. Anda boleh menggunakan atribut ini selepas memanggil execute() dengan pernyataan INSERT anda:

cursor.execute("INSERT INTO mytable(height) VALUES(%s)", (height))
last_inserted_id = cursor.lastrowid

Menggunakan connection.insert_id()

Sebagai alternatif, anda boleh menggunakan sambungan. kaedah insert_id() untuk mendapatkan ID yang dimasukkan terakhir pada sambungan tertentu. Kaedah ini tersedia pada objek sambungan yang anda gunakan untuk melaksanakan pertanyaan sisipan:

connection.execute("INSERT INTO mytable(height) VALUES(%s)", (height))
last_inserted_id = connection.insert_id()

Nota: Kaedah ini mendapatkan semula ID baris terakhir yang dimasukkan pada kursor atau sambungan tertentu objek, tidak semestinya ID baris yang baru anda masukkan. Jika berbilang pernyataan INSERT dilaksanakan pada objek yang sama, ID yang dikembalikan mungkin tidak sepadan dengan baris terakhir yang anda masukkan.

Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Kunci Utama yang Dijana Auto Selepas INSERT dalam MySQL menggunakan Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn