Rumah > pembangunan bahagian belakang > tutorial php > Bagaimanakah Saya Dapatkan ID Terakhir Dimasukkan untuk Hubungan Utama Asing dalam MySQL?

Bagaimanakah Saya Dapatkan ID Terakhir Dimasukkan untuk Hubungan Utama Asing dalam MySQL?

Susan Sarandon
Lepaskan: 2024-12-07 06:40:12
asal
913 orang telah melayarinya

How Do I Retrieve the Last Inserted ID for Foreign Key Relationships in MySQL?

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:

  1. Pastikan medan ID dalam jadual2 ialah medan kenaikan automatik. Ini akan menjana ID unik secara automatik untuk setiap baris yang dimasukkan.
  2. Gunakan fungsi mysqli_insert_id() selepas memasukkan baris baharu ke dalam jadual2. Fungsi ini mengembalikan ID kenaikan automatik terakhir yang dijana oleh pangkalan data.

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();
Salin selepas log masuk

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!

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