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