Heim  >  Artikel  >  Datenbank  >  Wie verwende ich „ON DUPLICATE KEY UPDATE“ mit den ActiveRecord-Modellen von CodeIgniter?

Wie verwende ich „ON DUPLICATE KEY UPDATE“ mit den ActiveRecord-Modellen von CodeIgniter?

DDD
DDDOriginal
2024-10-23 14:08:02468Durchsuche

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

Verwenden von „ON DUPLICATE KEY UPDATE“ mit den ActiveRecord-Modellen von CodeIgniter

In CodeIgniter-Modellen können Sie die Standard-Einfügemethode verwenden, aber Sie benötigen um die Anweisung „ON DUPLICATE KEY UPDATE“ manuell zur SQL-Abfrage hinzuzufügen. So können Sie dies erreichen:

<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>

Durch das Hinzufügen der Anweisung „ON DUPLICATE KEY UPDATE duplikat=LAST_INSERT_ID(duplicate)“ wird sichergestellt, dass das Duplikatfeld beim Auffinden eines doppelten Schlüssels erhöht wird, während der Einfügen ist erfolgreich. Mit der Funktion LAST_INSERT_ID() können Sie die ID der neu eingefügten Zeile abrufen, auch wenn aufgrund des doppelten Schlüssels eine Aktualisierung erfolgt.

Das obige ist der detaillierte Inhalt vonWie verwende ich „ON DUPLICATE KEY UPDATE“ mit den ActiveRecord-Modellen von CodeIgniter?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn