Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah Saya Boleh Memasukkan Baris dengan Selamat dalam PHP/MySQL dan Dapatkan ID Dijana Autonya?

Bagaimanakah Saya Boleh Memasukkan Baris dengan Selamat dalam PHP/MySQL dan Dapatkan ID Dijana Autonya?

Barbara Streisand
Barbara Streisandasal
2024-12-10 21:29:09623semak imbas

How Can I Safely Insert a Row in PHP/MySQL and Retrieve Its Auto-Generated ID?

PHP/MySQL Masukkan Baris dan Dapatkan 'id' Dengan Selamat

Memasukkan baris baharu dan mendapatkan semula medan 'id' yang dijana secara automatik boleh menjadi langkah kritikal dalam operasi pangkalan data . Walaupun hanya memasukkan baris dan menanyakannya mungkin memadai, ia membentangkan potensi isu rekod pendua. Untuk memastikan kebolehpercayaan, mari kita terokai cara yang cekap untuk menyelesaikan cabaran ini.

Menggunakan mysqli_insert_id()

Fungsi mysqli_insert_id() ialah penyelesaian terbaik untuk mendapatkan ID bagi rekod yang baru dimasukkan tanpa sebarang syarat perlumbaan. Ia merupakan kaedah yang cekap dan mudah yang menyelesaikan masalah dengan mudah.

$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);

Kaedah LAST_INSERT_ID() MySQL

Pendekatan lain menggunakan kaedah LAST_INSERT_ID() MySQL, membolehkan anda untuk lakukan berbilang sisipan dan dapatkan semula 'id' dalam satu pertanyaan. Pendekatan ini memastikan konsistensi dan mengelakkan sebarang keadaan perlumbaan yang berpotensi.

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

Nota Awas

Adalah penting untuk diingat bahawa setiap sambungan MySQL mengekalkan penjejakan ID yang berasingan, menghapuskan risiko konflik ID. Walau bagaimanapun, adalah penting untuk menggunakan teknik ini untuk melindungi daripada isu yang berpotensi dan mengekalkan integriti data anda.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memasukkan Baris dengan Selamat dalam PHP/MySQL dan Dapatkan ID Dijana Autonya?. 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