2015-07-03 91 views
-1

我需要在特定的时间间隔之后将特定的列值从“是”更新为“否”。如何在特定时间间隔后更新列值

表结构

`v_id` int(11) NOT NULL, 
`society_id` int(11) NOT NULL, 
`voting_for` varchar(500) COLLATE utf8_bin NOT NULL, 
`active` enum('Yes','No') COLLATE utf8_bin NOT NULL DEFAULT 'Yes', 
`voters` varchar(10000) COLLATE utf8_bin DEFAULT NULL, 
`created_on` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, 
`created_by` int(11) NOT NULL 
`active_till` date NOT NULL 

我怎样才能改变从现用列值没有一次active_till期限届满。我在Codeigniter中这样做。

+0

查看您是否可以在mysql中创建事件并将活动列更新为预定作业。 https://dev.mysql.com/doc/refman/5.1/en/events.html – Akhil

回答

1

因为我的名声是低于50,所以我不能发表评论,

您可以设置该作业的cron和运行每1分钟间隔或5分钟后,cron和更新活动列是或否通过比较您的active_till专栏与今天的日期或您的选择。

希望这会给你一个设置它的好主意。

0

我相信这将是更容易为你使用MySQL活动

它会更快,因为没有必要PHP运行运行。

使用phpMyAdmin,去到你的数据库 - >活动 - >添加事件,并从那里

那将使你的查询是这样的:

UPDATE #__active_run设置活动= NO

设置应该更新的时间间隔。

相关问题