Menggunakan 'ON DUPLICATE KEY UPDATE' dengan Model ActiveRecord CodeIgniter
Dalam model CodeIgniter, anda boleh menggunakan kaedah sisipan standard, tetapi anda perlu untuk menambah secara manual pernyataan "KEMASKINI KUNCI DUPLICATE" pada pertanyaan SQL. Begini cara anda boleh mencapainya:
<code class="php">$data = [ 'name' => 'John Doe', 'age' => 30 ]; // Create the insert string $sql = $this->db->insert_string('users', $data); // Append the "ON DUPLICATE KEY UPDATE" statement $sql .= ' ON DUPLICATE KEY UPDATE duplicate=LAST_INSERT_ID(duplicate)'; // Execute the query $this->db->query($sql); // Get the insert ID $id = $this->db->insert_id();</code>
Dengan menambahkan pernyataan "ON DUPLICATE KEY UPDATE duplikat=LAST_INSERT_ID(duplicate)", ia memastikan bahawa apabila kunci pendua ditemui, medan pendua ditambah manakala sisipan berjaya. Fungsi LAST_INSERT_ID() membolehkan anda mendapatkan semula ID baris yang baru dimasukkan, walaupun apabila kemas kini berlaku disebabkan oleh kunci pendua.
Atas ialah kandungan terperinci Bagaimana untuk Menggunakan \'KEMASKINI KUNCI PENDUPLICATE\' dengan Model ActiveRecord CodeIgniter?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!