python pandas 自动生成批量测试数据插入数据库 mysql
1、python连接数据库游标
# coding:utf-8 from sqlalchemy import create_engine class connet_databases:
def __init__(self):
'''
# 初始化数据库连接,使用pymysql模块
# MySQL的用户:root, 密码:147369, 端口:3306,数据库:mydb
''' _host = '39.108.131.88'
_port = 3306
_databases = 'san_jin_sq' # 'produce' # _username = 'wuzaipei'
_password = 'wuzaipei' self._connect = r'mysql+pymysql://{username}:{password}@{host}:{port}/{databases}'.format(
username=_username,
password=_password,
host=_host,
port=_port,
databases=_databases) engine = create_engine(connet_databases()._connect, echo=True)
2、随机字符串类型自动生成
coding:utf-8
import random # 随机生成n个字符串列表
def randomGenerateList(al,n=0):
'''
:param al: 字符串列表 ['八戒','悟空','物镜','师父']
:param n: n 为生成字符串列表的长度
:return:
'''
alist = list(al)
return [random.choice(alist) for _ in range(n)] def dict_conversion(col,dict_list):
'''
:param col: 数据库字段
:param dict_list: 把所有字段列表添加在dict里面
:return: 合并成一个表
'''
col_ = list(col)
dict_list_ = list(dict_list)
return dict(zip(col_,dict_list_))
3、一个小案例
import random
import uuid
from updateMsql.connectDatabases import engine
from updateMsql.generateDemand import randomGenerateList,dict_conversion
import pandas as pd
col = [ 'id','日期','品种','批号','销售数量', '销售金额']
date = pd.date_range('2018-7-11', '2019-10-30',freq='1D')
n_index = date.__len__()
ID = [_ for _ in range(n_index)]
field1 = randomGenerateList(['三金片','西瓜霜润喉片','桂林西瓜霜(喷剂)','西瓜霜清咽含片'],n_index)
field2 = randomGenerateList(['1001','1002','1003','1004','1005','1006'],n_index)
field3 = [random.randint(100,500) for i in range(n_index)]
field4 = [random.randint(500,1000) for j in range(n_index)] data = pd.DataFrame(data=dict_conversion(col,[ID,date,field1,field2,field3,field4])) data.to_sql('销售情况分析',engine,if_exists='replace',index=False)
print(data.head())
print("----插入成功-----")
4、结果测试

python pandas 自动生成批量测试数据插入数据库 mysql的更多相关文章
- mysql快速生成批量测试数据
mysql快速生成批量测试数据 参考资料: https://blog.csdn.net/oahz4699092zhao/article/details/53332148 -- 创建一个临时内存表 ; ...
- .net mvc 站点自带简易SSL加密传输 Word报告自动生成(例如 导出数据库结构) 微信小程序:动画(Animation) SignalR 设计理念(一) ASP.NET -- WebForm -- ViewState ASP.NET -- 一般处理程序ashx 常用到的一些js方法,记录一下 CryptoJS与C#AES加解密互转
.net mvc 站点自带简易SSL加密传输 因项目需要,传输数据需要加密,因此有了一些经验,现简易抽出来分享! 请求:前端cryptojs用rsa/aes 或 rsa/des加密,后端.net ...
- 使用Myeclipse10.0自动生成搭建SSH框架(数据库表自动反向转换成Hibernate实体)实现用户登陆
我这里使用的数据库是mysql5.0 数据是上课用的.这些都不是重点,重要的是学会这个方法: 创建好数据库: create database jboadefault character set utf ...
- Springboot 系列(十一)使用 Mybatis(自动生成插件) 访问数据库
1. Springboot mybatis 介绍 MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数获取 ...
- Word报告自动生成(例如 导出数据库结构)
将很早之前写的一个小组件重新整理优化一下,做成一个通用的功能.适用于导出数据库的结构(表.字段等)到Word或将体检数据自动生成Word版的体检报告等.代码:Github 一.主要需要完成功能: 1. ...
- (Python)自动生成代码(方法一)
在写某个平台的自动化脚本时,笔者把全部的操作都封装到了两个类中,page.py和commonpage.py: page.py部分代码: class BasePage(object): ''' 页面基础 ...
- Python项目自动生成当前项目的requirements文件
使用pip freeze $ pip freeze > requirements.txt 这种方式是把整个环境中的包都列出来了,如果是虚拟环境可以使用. 通常情况下我们只需要导出当前项目的r ...
- Pycharm 设置python文件自动生成头部信息模板
设置头部信息路径: 打开File—Settings—Editor—File and Code Templates—Python Script 输入要自动生成的头部信息模板 这样,新建py文件就会自动生 ...
- Python实现自动生成小学四则运算题目
Github地址: https://github.com/guoyuyi/gyy.github.io/blob/%E4%BD%9C%E4%B8%9A1/zy1.py 题目描述: 通过python语言编 ...
随机推荐
- 拯救诺基亚X6
现象:充电不稳,冲不进去电,后来直接黑屏了. 维修方式:更换手机尾插.或者更换整个尾插小板. 手机主板应该没有问题,这是本人某友的手机,据了解磕碰进水等问题.先前先后因为此问题找手机店,维修过两次,费 ...
- 深入理解JAVA虚拟机 垃圾收集器和内存分配策略
引用计数算法 很多教科书判断对象是否存活的算法是这样的:给对象中添加一个引用计数器,每当有一个地方引用它时,计数器值就加1:当引用失效时,计数器值就减1:任何时刻计数器都为0的对象就是不可能再被使用的 ...
- mybatis 的 DefaultVFS 日志乱码问题
mybatis 的 DefaultVFS 日志乱码问题 mybatis DefaultVFS 乱码 1. 问题描述 今天在启动同事搭建的工程时,发现 console 中乱码,细看下,是 mybat ...
- FCC 成都社区·前端周刊 第 3 期
01. Chrome65 的新功能 CSS Paint API 允许使用编程方式生成图像:Server Timing API允许服务器将时间信息通过HTTP headers传递给浏览器: CSS di ...
- Python---项目需求分析
一.软件工程 .软件工程:工程化方法解决软件问题 操作步骤 1.需求分析 前台:给基础用户使用的页面 后台:给操作者/admin等使用的页面系统 不是服务器前后台概念 2.小米前台 商品展示 商品详情 ...
- 数据结构-STL序列式容器总结
根据序列在容器中的排列特性,将常见数据结构分为:序列式容器和关联式容器. 常见序列式容器有 1.array(build-in)c++內建 2.vector 3.heap(以算法方式呈现) 4.prio ...
- 1.端口被占用问题:Embedded servlet container failed to start. Port 8097 was already in use.
1.端口被占用问题:Embedded servlet container failed to start. Port 8097 was already in use.netstat -anonetst ...
- MySQL的视图和索引
MySQL的视图 简单来说MySQL的视图就是对SELECT 命令的定义的一个快捷键,我们查询时会用到非常复杂的SELECT语句,而这个语句我们以后还会经常用到,我们可以经这个语句生产视图.视图是一个 ...
- html audio标签 语法
html audio标签 语法 audio标签的作用是什么? 作用:<audio> 标签定义声音,比如音乐和视频或其他音频资源,使用audio标签可以不用Flash插件就可以听音乐看视频, ...
- 实战build-react(二)-------引入Ant Design
安装 Ant Design npm install antd --save 或 yarn add antd 注释:https://www.jianshu.com/p/21caf40ee93e(cop ...