Sie können WHILE
nicht verwenden so wie das; siehe:mysql DECLARE WHILE outside Stored Procedure wie?
Sie müssen Ihren Code in eine gespeicherte Prozedur einfügen. Beispiel:
CREATE PROCEDURE myproc()
BEGIN
DECLARE i int DEFAULT 237692001;
WHILE i <= 237692004 DO
INSERT INTO mytable (code, active, total) VALUES (i, 1, 1);
SET i = i + 1;
END WHILE;
END
Geige:http://sqlfiddle.com/#!2/a4f92/1
Alternativ erzeugen Sie eine Liste von INSERT
Anweisungen mit einer beliebigen Programmiersprache; Für eine einmalige Erstellung sollte es in Ordnung sein. Als Beispiel hier ein Bash-Einzeiler:
for i in {2376921001..2376921099}; do echo "INSERT INTO mytable (code, active, total) VALUES ($i, 1, 1);"; done
Übrigens ist Ihnen bei Ihren Zahlen ein Tippfehler unterlaufen; 2376921001 hat 10 Stellen, 237692200 nur 9.