重复直到循环不起作用

时间:2014-06-26 07:57:35

标签: mysql phpmyadmin repeat

我正在尝试使用重复循环将数据从一个表移动到另一个表(table1的一个记录将是table2中的3个记录)。 phpmyadmin中的codee如下:

DELIMITER $

DROP Procedure IF EXISTS dowhile$
CREATE Procedure dowhile()

BEGIN

   DECLARE i INT;
   SET i = 50001;

   Repeat

      Insert Into table1 ( question_id, options, answer )
      Select      table 2.question_ID,
                  table2.Falsch1,
                  table2.Richtig
      From        table2
      Where       table2.question_ID = i;

      Select      table 2.question_ID,
                  table2.Falsch2,
                  table2.Richtig
      From        table2
      Where       table2.question_ID = i;

      Select      table 2.question_ID,
                  table2.Falsch3,
                  table2.Richtig
      From        table2
      Where       table2.question_ID = i;


      Set i = i +1;

      Until i = 50100

   End Repeat;

END

当我使用select语句本身用固定数字替换i时,它工作正常,但不知何故变量i在WHERE语句中不起作用。我可以为一些记录做这个,只是更改固定的数字,但我说的是25k记录....

我试图在phpmyadmin中以某种方式回显/打印i的内容,但这也不起作用,所以我无法重复检查真正的价值。任何人都可以帮助我吗?

0 个答案:

没有答案