Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Menggunakan \'KEMASKINI KUNCI PENDUPLICATE\' dengan Model ActiveRecord CodeIgniter?

Bagaimana untuk Menggunakan \'KEMASKINI KUNCI PENDUPLICATE\' dengan Model ActiveRecord CodeIgniter?

DDD
DDDasal
2024-10-23 14:08:02545semak imbas

How to Use 'ON DUPLICATE KEY UPDATE' with CodeIgniter's ActiveRecord Models?

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!

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