我有以下存储过程,我需要为列,类别,功能和列插入一组数据。状态。类别总是应该是' 1'和功能1到80,状态始终为' ACTIVE'。
BEGIN
DECLARE x INT;
SET x = 1;
WHILE x <= 80 DO
insert into functiontocategory (category,`function`,`status`) values ('1',x,'ACTIVE');
SET x = x+1;
END WHILE;
END
但它给了我160行插入数据,其中2组1到80而不是一组。我的手术有什么问题。
答案 0 :(得分:0)
DELIMITER $$
USE `test`$$
DROP PROCEDURE IF EXISTS `test`$$
CREATE DEFINER=`root`@`localhost` PROCEDURE `test`()
BEGIN
DECLARE X INT;
SET X = 1;
WHILE X <= 80 DO
INSERT INTO functiontocategory (category,`function`,`status`) VALUES ('1',X,'ACTIVE');
SET X = X+1;
END WHILE;
END$$
DELIMITER ;
我创建了一个数据库作为test和一个表函数类别(类别int(3),函数文本,状态varchar(10))和一个名为test..for的过程测试我使用了call test()并插入了80行完全