每年自动更新表格数据

时间:2012-10-30 05:50:21

标签: php mysql database postgresql date

我有一个包含id, description, start_date, end_date的数据库表,每个月有12个条目我只想在每个start_date, end_date字段中将2012年到2013年增加到今年结束时有可能超级用户登录检查日期以及仅在数据库表中01-01-20xx更新年份。

5 个答案:

答案 0 :(得分:2)

MySql事件调度程序在这里:

MySql Event

答案 1 :(得分:1)

您可以尝试以下操作:

  UPDATE Table_name SET start_date = DATE_ADD(start_date,INTERVAL 1 YEAR), end_date = DATE_ADD(end_date,INTERVAL 1 YEAR) WHERE id = '';

答案 2 :(得分:0)

Try This       

 <?php
        $currentyear=date("Y");
        //check the year database value 
        $yearindatabase=2012;//from database

        if($currentyear>$yearindatabase)
        {


     for($i=1;$i<=12;$i++)
        {

        $num = cal_days_in_month(CAL_GREGORIAN, $i, $currentyear);
        $start_date="2012-".$i."-01";
        $end_date="2012-".$i."-".$num."";

        //Update Query

        $queryUpdate="update table set start_date='".$start_date."',end_date='".$end_date."'";

        }

        ?>

答案 3 :(得分:0)

$query="UPDATE awards_list SET start_date = start_date + interval '1 year', 
            end_date = end_date + interval '1 year'";
我也使用postgressql,因为它工作得很好,我通过点击按钮得到它,即点击按钮时整个表年字段将增加1年,所以一次点击一年即可。

答案 4 :(得分:0)

工作

 UPDATE Table_name SET start_date = DATE_ADD(start_date,INTERVAL 1 YEAR), end_date = DATE_ADD(end_date,INTERVAL 1 YEAR) WHERE id = '';