如何实现下列功能啊,内容不变,时间中的月份加依次加1
字段:id    content  startdate
       1    工资发放 2011-6-26
       2    工资发放 2011-7-26
       3    工资发放 2011-8-26
       4    工资发放 2011-9-26
       ....是要循环一条sql语句吧,应该怎么写啊 跪求跪求...
$count=5;
while($i=0;$i<$count;$i++)
{
      $sql="";
}
麻烦各位前辈 高手给看看啊,小弟不胜感激

解决方案 »

  1.   

    DATE_ADD(startdate,INTERVAL 1 MONTH) 
      

  2.   


    insert into workplan startdate values (DATE_ADD('2011-6-30',INTERVAL 1 MONTH)) 
    前辈,这个样是不是不行,你那个startdate是不是必须要求这个值必须存在的啊
      

  3.   

    你那个startdate是不是必须要求这个值必须存在的啊:
    可以用变量,对变量赋值
    aa=''2011-6-30'
    for i=1 to 5
    insert into workplan startdate values (DATE_ADD(aa,INTERVAL i MONTH)) 
    next
      

  4.   


    我还刚刚在mysql数据库里面执行了一下,可是报错了
    不用必须存在啊
    我就是想实现那个一下可以插入多条sql语句,并且时间中月份递增的啊
      

  5.   

    你用SP还是语言?
    你的SP代码 是什么?
      

  6.   

    用的php啊,我还没开始写代码呢,就想现在数据里面试试啊
    您看insert into workplan startdate values (DATE_ADD("2011-6-5",INTERVAL i MONTH))然后mysql就报了这个错
    #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'startdate values (DATE_ADD("2011-6-5",INTERVAL i MONTH))' at line 1
      

  7.   

    你的代码
    假设在MYSQL中
    set @i=1;
    WHILE @i<=5 DO
    insert into workplan startdate values (DATE_ADD("2011-6-5",INTERVAL @i MONTH));
    set @i=@i+1;
    END WHILE;
      

  8.   


    前辈,我数据库学的不是很好,你这个直接复制到数据库执行sql就行了? 还是报错啊
    错误
    SQL 查询: WHILE@i <=5 DO INSERT INTO workplan startdate
    VALUES (DATE_ADD( "2011-6-5", INTERVAL @i 
    MONTH ) 
    );MySQL 返回: #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHILE @i<=5 DO
    insert into workplan startdate values (DATE_ADD("2011-6-5",INTER' at line 1 
      

  9.   

    建立SP:
    DELIMITER $$
    CREATE PROCEDURE dda()
    BEGIN
    SET @i=1;
    WHILE @i<=5 DO
    INSERT INTO workplan(startdate) VALUES (DATE_ADD("2011-6-5",INTERVAL @i MONTH));
    SET @i=@i+1;
    END WHILE;
    END;$$
    DELIMITER ;CALL DDA()
      

  10.   


    前辈 这样确实在mysql里面能执行,但是在程序里面,用php代码怎么写啊
    INSERT INTO workplan(startdate) VALUES (DATE_ADD("2011-6-5",INTERVAL @i MONTH));
    反正原理就是这个样哈
      

  11.   

    你已经发了两个帖子问这个问题,有时间自己调试一下不行?
    VBA示例:
    aa='2011-6-30'
    for i=1 to 5
    insert into workplan(startdate) values (DATE_ADD(aa,INTERVAL i MONTH)) 
    next
      

  12.   

    select startdate+interval 1 month from ..