我正在尝试运行一个函数,以便在说 1 分钟后将消息发布到数据库后,它会删除该行。
我的数据库如下所示:
CREATE TABLE `messages` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`user_id` int(35) NOT NULL,
`account_number` int(25) NOT NULL,
`message_content` text NOT NULL,
`created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`status` enum('1','0') NOT NULL,
`txt` varchar(20) NOT NULL DEFAULT 'Unread',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COMMENT='Table for storing notifications/messages' AUTO_INCREMENT=27 ;
我当前的代码如下所示:
$sql = "DELETE FROM messages WHERE created < DATE_SUB( NOW( ) , INTERVAL 2 MINUTE )";
$this->db->query($sql);
基本上就像我在 1/2 分钟后所说的那样,这需要通过它所抓取的 ID 从数据库中删除消息,如何实现这一点,因为我上面显示的代码不起作用。我正在使用 ActiveRecord 它可以帮助任何人帮助我。
提前致谢。