我想根据我输入的项目数量运行下面的查询,例如,我想在表格中添加5个玩具,因此查询将运行5次。
我的查询如下:
$q = 'INSERT INTO StockDetails (stockNumber, quantity, items) VALUES (".$snumber.", "1", "toys")';
我希望得到一个像这样的表:
ID stockNumber quantity items
-----------------------------------------------
1 ST001 1 toys
2 ST001 1 toys
3 ST001 1 toys
4 ST001 1 toys
5 ST001 1 toys
所以,如果我把玩具的数量改为10,我会得到一张10行的桌子。
请帮忙。
答案 0 :(得分:0)
如果您希望insert
个查询执行指定的次数,那么最好将其包含在function
内,并将该函数调用number of rows
作为一个参数,例如:
DELIMITER $$
DROP FUNCTION IF EXISTS `test`.`myfunction` $$
CREATE FUNCTION `test`.`myfunction` (count int, i_stockNumber varchar(20), i_quantity int, i_items int) RETURNS INT
DECLARE x INT;
SET x = 0;
BEGIN
WHILE x <= count DO
insert into StockDetails (stockNumber, quantity, items) values (i_stockNumber, i_quantity, i_items);
SET x = x + 1;
END WHILE;
RETURN LAST_INSERT_ID();
END $$