Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Mendapatkan Kembali ID Baris Terakhir yang Dimasukkan dalam MySQL untuk Persatuan Berbilang Jadual?

Bagaimana untuk Mendapatkan Kembali ID Baris Terakhir yang Dimasukkan dalam MySQL untuk Persatuan Berbilang Jadual?

Susan Sarandon
Lepaskan: 2024-12-17 04:29:25
asal
802 orang telah melayarinya

How to Reliably Retrieve the Last Inserted Row ID in MySQL for Multi-Table Associations?

Mengambil Baris Terakhir yang Disisipkan untuk Mengaitkan dengan Jadual Lain

Apabila memasukkan data ke dalam berbilang jadual, selalunya perlu untuk mengaitkan rekod yang dimasukkan dengan yang lain jadual menggunakan IDnya. Dalam kes sedemikian, mendapatkan semula ID baris terakhir yang disisipkan menjadi penting. Walau bagaimanapun, menggunakan $mysqli->insert_id secara langsung boleh membawa kepada keputusan yang salah.

Penyelesaian:

Untuk mendapatkan semula ID yang terakhir dimasukkan dengan betul, anda perlu menggunakan mysqli_insert_id () fungsi. Fungsi ini menyediakan ID baris terakhir yang dimasukkan ke dalam sambungan pangkalan data semasa. Kod yang diperbetulkan di bawah menunjukkan penggunaannya:

<br>$stmt = $mysqli->prepare("<br> INSERT INTO table1 (username, first name, lastname, image) <br> PILIH ?,?,?,imej DARI jadual2 t2 DI MANA nama pengguna = ?<br>");<br>$stmt->bind_param('ssss', $username, $fname, $lname, $username);<br>$stmt->execute();</p>
<p>$last_id = mysqli_insert_id($conn); // Dapatkan ID yang terakhir dimasukkan</p>
<p>// Kemas kini lajur imej dalam jadual1 menggunakan ID yang diambil<br>$stmt2 = $mysqli->prepare("<br> KEMASKINI jadual1 SET imej = ? WHERE id = ?<br>");<br>$stmt2->bind_param('si', $image, $last_id);<br>$stmt2->execute();<br>

Nota: Pastikan medan ID anda dalam jadual2 mempunyai Atribut AUTO_INCREMENT untuk menjana nilai ID unik bagi setiap baris yang disisipkan.

Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Kembali ID Baris Terakhir yang Dimasukkan dalam MySQL untuk Persatuan Berbilang Jadual?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan