问答 使用 mysql,实现测试数据批量插入?

沐子 · March 14, 2019 · Last by skywingfs replied at October 14, 2019 · 2464 hits

在某度上搜索到的,一直报错,不知道哪里出了问题

有没有更好的方法实行测试数据批量插入?
如果插入的数据涉及到两表以上应该如何实现

共收到 9 条回复 时间 点赞

你这里是想写 insert 吗? 多检查一下语句格式吧

沐子 #2 · March 14, 2019 作者
Jerry li 回复

这个可能是写第二遍的时候不小心,已经改过来了。 报的是单引号附近错误

写了个类似的,对比看看就晓得啦~

CREATE PROCEDURE test_insert()
BEGIN
DECLARE i INT DEFAULT 111;
DECLARE j INT DEFAULT 60;
WHILE i<120 DO
INSERT INTO course VALUES(i,CONCAT("计算机导论",i),j);
SET i=i+1;
SET j=j+1;
END WHILE;
END
沐子 回复

j截图看下你完整的脚本吧, 错误提示说是 line 1 报错, 你截的是 49 行开始

你这个后面不需要加分号吗?

mysql语法不熟悉,我之前是python来执行sql语句实现的

我自己做批量导入都是先生成数据或sql,再导入到数据库,这样数据量大的话速度也会很快
使用mysql自己的source或load data 或者直接<xxx.sql 都可以做到快速导入,这个百度一下就知道怎么用了

最近也在做这个事情, 我用的python , 每个参数都自己写方法生成跟开发类似的满足入库字段, 为插入数据的字段做准备。 通过多线程的方式,每满1000条做一次插入, 还要处理数据的key重复判断。 最后做循环, 循环的数据量 通过 start 跟 end 配置数据量级,达到数据插入的目的。

写个python脚本可比储存过程舒服多了,数据少for循环,数据量大多进程多线程插入。

需要 Sign In 后方可回复, 如果你还没有账号请点击这里 Sign Up