python脚本批量生成数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python脚本批量生成数据相关的知识,希望对你有一定的参考价值。

   在平时的工作中,经常会遇到造数据,特别是性能测试的时候更是需要大量的数据。如果一条条的插入数据库或者一条条的创建数据,效率未免有点低。如何快速的造大量的测试数据呢?在不熟悉存储过程的情况下,今天给大家介绍一种方法,很简单的也很实用。思路是用python代码写一段小程序,生成一定数量的SQL语句,再把这些SQL语句拷贝黏贴到数据库工具执行SQL即可。

假如有个联系人的学生表student,其表结构为姓名name、学校school、电话telphone、邮箱email。

以Mysq为例子,sql语句如下:

INSERT INTO student(name , shool , telephone , email) VALUES(“小明” ,”万航渡路小学” , 13810001000 ,”[email protected]”);

通过python脚本批量生成1000条待插入的SQL语句

# -*- coding: utf-8 -*-
__author__ = 肥猫与猪宝宝


f = open(student.txt, w)

for i in  range(1, 1001):
    str_i = str(i)
    name = "张三" + str_i
    school = "万航渡路小学"
    telephone = 13810000000 + i
    email = "张三" + str_i + "@gmail.com"
    sql = INSERT INTO student(name , school , telephone , email) VALUES ("+name+" , "+school+" , +str(telephone)+ , "+email+");
    f.write(sql)
    f.write("\\n")

f.close()

 

运行下,在当前工作目录,生成student.txt。

技术分享

分析下程序

f = open(student.txt, w)

用写的方式打开student.txt这个文件,并赋值给f

for i in range(1 , 1001)

 for循环,range代表范围但是不包括1001

sql中的“‘+name’”就是拼接,让变量被插入sql

f. write 

方法写入( )括号内的内容

f.write("\\n")

就是写入的内容换行

f.close()

调用close方法关闭文件,有打开就要有关闭。

在student.txt文件中选中全部sql去mysql工具中执行即可,常见的mysql工具有sqlyog、navicat都是很好用的。

到此为止,简单的造数据方法就写完了。

以上是关于python脚本批量生成数据的主要内容,如果未能解决你的问题,请参考以下文章

python脚本批量生成50000条插入数据的sql语句

Python批量搜索和生成数据脚本,含有打包输出exe和msi

jinja2批量生成python脚本

Python 中使用 ddt 来进行数据驱动,批量执行用例,修改ddt代码

Python 批量生成中文姓名(百家姓)

Python批量生成特定尺寸图片及图画任意文字