我正在尝试使用重复循环将数据从一个表移动到另一个表(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
的内容,但这也不起作用,所以我无法重复检查真正的价值。任何人都可以帮助我吗?