gpt4 book ai didi

codeigniter - 如何使用 ActiveRecord 和 mySQL 函数作为 WHERE 条件删除记录

转载 作者:行者123 更新时间:2023-12-04 02:58:48 24 4
gpt4 key购买 nike

我有一个名为 ChatSessions 的表,我在其中跟踪聊天室中的活跃用户。我需要每 10 分钟从表中删除过期的用户 session 。使用纯 php-mysql 非常简单,但我完全不知道如何在 CodeIgniter 中将其转换为 ActiveRecord。普通 SQL 查询如下:

SELECT *
FROM `ChatSessions`
WHERE `SessionExpires` < DATE_SUB( NOW( ) , INTERVAL 10 MINUTE )

谁能告诉我在 CodeIgniter 中使用 ActiveRecord 的等效代码是什么?

最佳答案

下面的代码应该可以做到:

// You can use custom strings in the where() function
$where = "SessionExpires < DATE_SUB( NOW( ) , INTERVAL 10 MINUTE )";
// although you may need to set the third parameter to FALSE in order to stop CI from protecting your fields.
$this->db->where($where, null, false);
$this->db->delete('ChatSessions');

您也可以尝试以下方法(但我不知道这是否有效):

$where_condition = "DATE_SUB( NOW( ) , INTERVAL 10 MINUTE )";
$this->db->where("SessionExpires <", $where_condition, false);
$this->db->delete('ChatSessions');

关于codeigniter - 如何使用 ActiveRecord 和 mySQL 函数作为 WHERE 条件删除记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2992127/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com