将下面语句改为mysql正确代码 。 DECLARE i int DEFAULT 0; BEGIN WHILE i<100001 DO insert into ttest1 values( i,i||'haha',i||'hehe2') ; set i = i+1; END WHILE; insert into ttest1(b,c) values('xx','xx'); COMMIT; end;
时间: 2024-03-09 22:45:53 浏览: 40
MySQL循环语句之while循环测试
你需要将该语句包装为一个存储过程,然后执行该存储过程。以下是修改后的 MySQL 代码:
```mysql
DELIMITER $$
CREATE PROCEDURE insert_data()
BEGIN
DECLARE i INT DEFAULT 0;
WHILE i < 100001 DO
INSERT INTO ttest1 VALUES (i, CONCAT(i, 'haha'), CONCAT(i, 'hehe2'));
SET i = i + 1;
END WHILE;
INSERT INTO ttest1 (b, c) VALUES ('xx', 'xx');
COMMIT;
END $$
DELIMITER ;
CALL insert_data();
```
这个代码创建了一个名为 `insert_data` 的存储过程,然后在过程中通过 WHILE 循环向表 ttest1 中插入 100001 条数据,最后插入了一条 b 和 c 字段都为 'xx' 的数据,然后提交事务。最后,通过 `CALL` 关键字调用该存储过程。
阅读全文