ホームページ >データベース >mysql チュートリアル >CodeIgniter の ActiveRecord モデルで「ON DUPLICATE KEY UPDATE」を使用する方法は?
CodeIgniter の ActiveRecord モデルで 'ON DUPLICATE KEY UPDATE' を使用する
CodeIgniter モデルでは、標準の挿入メソッドを使用できますが、 SQL クエリに「ON DUPLICATE KEY UPDATE」ステートメントを手動で追加します。これを実現する方法は次のとおりです。
<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>
「ON DUPLICATE KEY UPDATE Duplicate=LAST_INSERT_ID(duplicate)」ステートメントを追加すると、重複キーが見つかったときに、重複フィールドがインクリメントされるようになります。挿入は成功しました。 LAST_INSERT_ID() 関数を使用すると、キーが重複しているために更新が発生した場合でも、新しく挿入された行の ID を取得できます。
以上がCodeIgniter の ActiveRecord モデルで「ON DUPLICATE KEY UPDATE」を使用する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。