mysql批量插入500条数据
1
|
表格结构如下 |
需求name和password字段,生成如下格式:
总共批量生成500个。
解决思路:
-
可以用mysql 存储过程
-
如果linux环境下可以用shell
我们先测试第一种,用存储过程。
1
2
3
4
5
6
7
8
9
10
11
|
DELIMITER ;; ##定义;;为结束符
CREATE PROCEDURE test_insert() ##创建存储过程 test_insert()是名字
BEGIN DECLARE y int DEFAULT 1 ; ##定义y 为整数 默认起始值为1
WHILE y<500 DO insert into test1(name,password,reallyName,age,profession,email,question,result) values(concat( 'test' ,y),concat( 'test' ,y), 'jiang' ,30, 'hello' , 'hello' , 'hello' , 'hello' );
SET y=y+1; ##y数值加1
END WHILE ; commit; END;; |
定义完成存储过程test_insert()
执行命令 call test_insert() 自动生成500条数据
期间遇到的问题:
开始的时候,
1
2
3
4
5
6
7
|
DECLARE y int DEFAULT 1 考完不周全,这条命令我写成了: DECLARE y TINYINT DEFAULT 1 存储过程建立后,执行死循环,而且插入的y最大值为127, 后面检查原因,发现 tinyint 最大值为127 改成int后,执行成功。 |
本文转自 am2012 51CTO博客,原文链接:http://blog.51cto.com/goome/1955738