आप WHILE
. का उपयोग नहीं कर सकते उस तरह; देखें:mysql DECLARE जबकि बाहर की संग्रहीत प्रक्रिया कैसे?ए>
आपको अपना कोड संग्रहीत प्रक्रिया में रखना होगा। उदाहरण:
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
पहेली:http://sqlfiddle.com/#!2/a4f92/1
वैकल्पिक रूप से, INSERT
. की एक सूची तैयार करें अपनी पसंद की किसी भी प्रोग्रामिंग भाषा का उपयोग करने वाले कथन; एक बार की रचना के लिए, यह ठीक होना चाहिए। उदाहरण के तौर पर, यहाँ एक बैश वन-लाइनर है:
for i in {2376921001..2376921099}; do echo "INSERT INTO mytable (code, active, total) VALUES ($i, 1, 1);"; done
वैसे, आपने अपने नंबरों में एक टाइपो बना दिया है; 2376921001 में 10 अंक हैं, 237692200 केवल 9.