Mendapatkan semula ID Sisipan Terakhir untuk Hubungan Kunci Asing
Dalam pangkalan data hubungan, adalah perkara biasa untuk mewujudkan hubungan kunci asing antara jadual. Apabila memasukkan baris baharu ke dalam jadual anak, anda mungkin perlu mengaitkannya dengan baris dalam jadual induk. Untuk mencapai matlamat ini, anda biasanya perlu mendapatkan ID yang dimasukkan terakhir daripada jadual induk dan menggunakannya sebagai kunci asing dalam jadual anak.
Cabaran:
Anda ingin mengaitkan imej (daripada jadual2) dengan pengguna (dalam jadual1) menggunakan nama pertama, nama keluarga dan nama pengguna mereka. Walau bagaimanapun, apabila anda cuba mendapatkan ID yang dimasukkan terakhir daripada jadual2 dan mengikatnya sebagai kunci asing dalam jadual1, ia tidak berfungsi.
Penyelesaian:
Kepada berjaya mendapatkan ID yang terakhir dimasukkan dan menggunakannya untuk mengisi kunci asing, anda perlu mengikuti ini langkah:
Berikut ialah versi terkini kod anda yang menggabungkan fungsi mysqli_insert_id():
$image = mysqli_insert_id($mysqli); // Retrieve the last inserted ID from table2 $stmt = $mysqli->prepare(" insert into table1 (username, firstname, lastname, image) select ?,?,?,image from table2 t2 where username = ? and t2.id = ? "); $stmt->bind_param('sssss', $username, $fname, $lname, $username, $image); $stmt->execute();
Dengan membuat ini perubahan, anda kini boleh mendapatkan ID yang dimasukkan terakhir daripada jadual2 dan menggunakannya sebagai kunci asing untuk memautkan baris baharu dalam jadual1.
Atas ialah kandungan terperinci Bagaimanakah Saya Dapatkan ID Terakhir Dimasukkan untuk Hubungan Utama Asing dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!