Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah Saya Boleh Mendapatkan ID Baris yang Baru Dimasukkan dalam MySQL Menggunakan PHP?

Bagaimanakah Saya Boleh Mendapatkan ID Baris yang Baru Dimasukkan dalam MySQL Menggunakan PHP?

Susan Sarandon
Susan Sarandonasal
2024-12-05 05:28:10898semak imbas

How Can I Get the ID of a Newly Inserted Row in MySQL Using PHP?

Memasukkan Baris ke dalam Jadual MySQL dan Mendapatkan IDnya

Apabila memasukkan baris ke dalam jadual MySQL dengan medan ID peningkatan automatik , mendapatkan ID baris yang disisipkan boleh menjadi penting. Walau bagaimanapun, selang masa antara sisipan dan pengambilan ID boleh memperkenalkan kemungkinan ralat.

Fungsi mysqli_insert_id()

Fungsi PHP mysqli_insert_id() menyediakan penyelesaian untuk ini masalah. Selepas melaksanakan pertanyaan INSERT, mysqli_insert_id() mengembalikan ID baris terakhir yang dimasukkan dalam sambungan semasa. Ini menghapuskan keperluan untuk menanya semula pangkalan data atau bergantung pada keadaan perlumbaan.

Contoh Penggunaan:

$link = mysqli_connect('127.0.0.1', 'my_user', 'my_pass', 'my_db');

mysqli_query($link, "INSERT INTO mytable (1, 2, 3, 'blah')");

$id = mysqli_insert_id($link);

echo "Inserted Row ID: $id";

Pendekatan Alternatif: Menggabungkan Pertanyaan

Sebagai alternatif, kaedah LAST_INSERT_ID() MySQL boleh digunakan untuk mengubah suai berbilang jadual dalam satu pertanyaan sambil memberikan ID unik:

mysqli_query($link, "INSERT INTO my_user_table ...;
  INSERT INTO my_other_table (`user_id`) VALUES (LAST_INSERT_ID())");

Nota: Setiap sambungan MySQL mengekalkan penjejak ID yang berasingan, menghalang konflik ID.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mendapatkan ID Baris yang Baru Dimasukkan dalam MySQL Menggunakan PHP?. 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