Codeigniter 3:删除超过2个月的所有行

时间:2016-12-18 21:57:46

标签: php mysql date datetime codeigniter-3

我正在使用codeigniter 3.我想删除表格“anwser”中超过2个月的所有行(mysql tabel中的日期时间)。我没有收到错误。但是没有删除任何行。 有什么建议吗?

模型:

    function delete_old_anwsers()
{
    $this->load->model('quiz_model');
    $this->db->where('datum <', 'strtotime('-2 month')');
    $this->db->delete('anwser');
}

控制器:

$this->quiz_model->delete_old_anwsers();

谢谢

解决方案:

    function delete_old_answer()
{
    $this->db->query("DELETE FROM answer WHERE datum < NOW() - INTERVAL 2 MONTH ");
}

2 个答案:

答案 0 :(得分:1)

你需要写一个将每天执行的crone作业。

在此,您可以添加此查询,它将删除所有超过2个月的答案。

答案 1 :(得分:0)

在活动记录中它将是:

$this->db->where('datum < DATE_SUB(NOW(), INTERVAL 60 DAY)');
$this->db->delete('anwser');