0
以下のコードを使用して、指定された条件のレコードを取得してから、同じレコードのみを更新します。Codeigniter - 同じクエリでGetとUpdateを組み合わせる
$this->db->where('Parameter1', 'TRUE');
$query = $this->db->get('Messages');
$this->db->where('Parameter1', 'TRUE');
$this->db->set('Parameter1', 'FALSE');
$this->db->update('Messages');
これは動作しますが、()コマンドを使用して2回同じクエリを呼び出すと、サーバーの電源の無駄のように思えます。 get()コマンドでクエリをリセットしたり、updateコマンドで以前のレコードセットを使用したりすることはできますか?
実際のコードを 'Parameter1'なしで追加するのは分かりません。そして、あなたは '$ query'の出力で何もしません。 –
通常、モデル内の異なる関数を取得して更新します。あなたのコードセグメントで、私はあなたが更新したい同じレコードを得る理由を見つけることができません。あなたはもう少し詳しく説明できますか? –
はい、ユーザーは、メッセージを格納しているテーブルからこれらの新しいメッセージを読み取っているため、そのメッセージが「読み取られた」という情報をそのテーブルに保存する必要があります。メッセージが新しい(TRUE)か、すでに読み込まれている(FALSE)場合、Parameter1は説明しています。 –