一、前言

最近做web网站的测试,遇到很多需要批量造数据的功能;比如某个页面展示数据条数需要达到10000条进行测试,此时手动构造数据肯定是不可能的,此时只能通过python脚本进行自动构造数据;本次构造数据主要涉及到在某个表里面批量添加数据、在关联的几个表中同步批量添加数据、批量查询某个表中符合条件的数据、批量更新某个表中符合条件的数据等。

二、数据添加

即批量添加数据到某个表中。

insert_data.py

import pymysql

import random

import time

from get_userinfo import get_userinfo

from get_info import get_info

from get_tags import get_tags

from get_tuser_id import get_utag

class databaseaccess():

def __init__(self):

self.__db_host = "xxxxx"

self.__db_port = 3307

self.__db_user = "root"

self.__db_password = "123456"

self.__db_database = "xxxxxx"

# 连接数据库

def isconnectionopen(self):

self.__db = pymysql.connect(

host=self.__db_host,

port=self.__db_port,

user=self.__db_user,

password=self.__db_password,

database=self.__db_database,

charset='utf8'

)

# 插入数据

def linesinsert(self,n,user_id,tags_id,created_at):

self.isconnectionopen()

# 创建游标

global cursor

conn = self.__db.cursor()

try:

sql1 = '''

insert into `codeforge_new`.`cf_user_tag`(`id`, `user_id`,

`tag_id`, `created_at`, `updated_at`) values ({}, {},

{}, '{}', '{}');

'''.format(n,user_id,tags_id,created_at,created_at)

# 执行sql

conn.execute(sql1,)

except exception as e:

print(e)

finally:

# 关闭游标

conn.close()

self.__db.commit()

self.__db.close()

def get_data(self):

# 生成对应数据 1000条

for i in range(0,1001):

created_at = time.strftime('%y-%m-%d %h:%m:%s',time.localtime())

# print(create_at)

# 用户id

tuserids = []

tuserid_list = get_utag()

for tuserid in tuserid_list:

tuserids.append(tuserid[0])

# print(tuserids)

userid_list = get_userinfo()

user_id = random.choice(userid_list)[0]

if user_id not in tuserids:

user_id=user_id

# 标签id

tagsid_list = get_tags()

tags_id = random.choice(tagsid_list)[0]

self.linesinsert(i,user_id,tags_id,created_at)

if __name__ == "__main__":

# 实例化对象

db=databaseaccess()

db.get_data()

二、数据批量查询

select_data.py

import pymysql

import pandas as pd

import numpy as np

def get_tags():

# 连接数据库,地址,端口,用户名,密码,数据库名称,数据格式

conn = pymysql.connect(host='xxx.xxx.xxx.xxx',port=3307,user='root',passwd='123456',db='xxxx',charset='utf8')

cur = conn.cursor()

# 表cf_users中获取所有用户id

sql = 'select id from cf_tags where id between 204 and 298'

# 将user_id列转成列表输出

df = pd.read_sql(sql,con=conn)

# 先使用array()将dataframe转换一下

df1 = np.array(df)

# 再将转换后的数据用tolist()转成列表

df2 = df1.tolist()

# cur.execute(sql)

# data = cur.fetchone()

# print(df)

# print(df1)

# print(df2)

return df2

conn.close()

三、批量更新数据

select_data.py

import pymysql

import pandas as pd

import numpy as np

def get_tags():

# 连接数据库,地址,端口,用户名,密码,数据库名称,数据格式

conn = pymysql.connect(host='xxx.xxx.xxx.xxx',port=3307,user='root',passwd='123456',db='xxxx',charset='utf8')

cur = conn.cursor()

# 表cf_users中获取所有用户id

sql = 'select id from cf_tags where id between 204 and 298'

# 将user_id列转成列表输出

df = pd.read_sql(sql,con=conn)

# 先使用array()将dataframe转换一下

df1 = np.array(df)

# 再将转换后的数据用tolist()转成列表

df2 = df1.tolist()

# cur.execute(sql)

# data = cur.fetchone()

# print(df)

# print(df1)

# print(df2)

return df2

conn.close()

以上就是python 实现数据库中数据添加、查询与更新的示例代码的详细内容,更多关于python 数据库添加、查询与更新的资料请关注萬仟网其它相关文章!

希望与广大网友互动??

点此进行留言吧!

python代码中怎么增加数据_python 实现数据库中数据添加、查询与更新的示例代码...相关推荐

  1. python 更新数据库历史_python 实现数据库中数据添加、查询与更新的示例代码

    一.前言 最近做web网站的测试,遇到很多需要批量造数据的功能:比如某个页面展示数据条数需要达到10000条进行测试,此时手动构造数据肯定是不可能的,此时只能通过python脚本进行自动构造数据:本次 ...

  2. python查询数据库后更新_python 实现数据库中数据添加、查询与更新的示例代码...

    一.前言 最近做web网站的测试,遇到很多需要批量造数据的功能:比如某个页面展示数据条数需要达到10000条进行测试,此时手动构造数据肯定是不可能的,此时只能通过python脚本进行自动构造数据:本次 ...

  3. 怎么把竖列中的数相加python_关于python中pandas.DataFrame对行与列求和及添加新行与列示例代码...

    pandas是python环境下最有名的数据统计包,而DataFrame翻译为数据框,是一种数据组织方式,这篇文章主要给大家介绍了关于python中pandas.DataFrame对行与列求和及添加新 ...

  4. python制作微信二维码_Python提取支付宝和微信支付二维码的示例代码

    支付宝或者微信支付导出的收款二维码,除了二维码部分,还有很大一块背景图案,例如下面就是微信支付的收款二维码: 有时候我们仅仅只想要图片中间的方形二维码部分,为了提取出中间部分,我们可以使用图片处理软件 ...

  5. python 为html页面增加背景_Python 给html css自动添加注释

    Python 给html css自动添加注释(2020年11月8日) 背景 大二上学期专业开设了网页设计课程,专门学习html和css,有时候也经常有同学找我来帮忙看看他们写的代码,并且改改,我就忽然 ...

  6. 批量插入数据库语句java_java相关:MyBatis批量插入数据到Oracle数据库中的两种方式(实例代码)...

    java相关:MyBatis批量插入数据到Oracle数据库中的两种方式(实例代码) 发布于 2020-7-22| 复制链接 本文通过实例代码给大家分享了MyBatis批量插入数据到Oracle数据库 ...

  7. python金融数据分析和可视化--02_04将股票数据存到sqlite数据库中

    02_04将股票数据存到sqlite数据库中 1. 建立连接 通过SQLAlchemy中的create_engine()函数连接数据库 from sqlalchemy import create_en ...

  8. php如何导入数据,““php中如何将execl的数据导入到数据库中

    php中如何将execl的数据导入到数据库中 1.使用PHP Excel Parser Pro,但是这个软件为收费软件: 2.可EXCEL表保存为CSV,然后通过phpmyadmin或者SQLyog导 ...

  9. java当中有关循环的代码_有关Java循环的内容,编程中还是比较常用的,下面分享给大家几个循环的示例代码,练习一下。1、循环输出1到100之间所有能被3或能被4整除的数。pack...

    有关Java循环的内容,编程中还是比较常用的,下面分享给大家几个循环的示例代码,练习一下. 1.循环输出1到100之间所有能被3或能被4整除的数. package com.hz.loop02; /** ...

最新文章

  1. mysql show 原理_mysql事务的实现原理
  2. 利用ISCSI存储技术构建IP存储网络(安全篇)
  3. HDU4825 Xor Sum 01字典树(Tire Tree)
  4. 在 Eclipse Galileo 中更快地编写 Java 代码使用新的 toString() 生成器
  5. 美国量子计算机能编程吗,世界首台可编程通用量子计算机美国问世
  6. 重构随笔——重构的原则
  7. AFNetWorking 之 网络请求的基本知识
  8. Java I/O系统之转换流
  9. mysql 百度地图 省市_批量获取百度地图的行政区划电子围栏
  10. Javascript 特效大全
  11. 如何成为一个合格的数据分析师
  12. 旅游网站设计制作方案
  13. 说说 title 和 alt 属性有什么区别?
  14. python斐波那契数列计算_python计算斐波那契数列
  15. 坚守梦想,善待苦难,等幸福来敲门
  16. 论文阅读《Characterizing BDS signal-in-space performance from integrity perspective》3
  17. LNMP搭建HDwiki
  18. IllegalStateException: Couldn‘t read row 0, col 10 from CursorWindow. Make sure the Cursor is initi
  19. OpenWrt路由开启DDNS+端口转发进行外网访问
  20. 自控原理学习笔记-反馈控制系统的动态模型(1)

热门文章

  1. 自动清除html无用css,TinyMCE粘贴HTML代码,避免style属性被自动清除_html/css_WEB-ITnose...
  2. osip和mysql_Windows下编译eXosip、osip,以及UAC和UAS的例子
  3. 在线笔记存代码_李宏毅《机器学习》完整版笔记发布
  4. linux下u盘病毒msdos,浅谈U盘病毒——MS-DOS.com 以及做最便民的杀毒软件
  5. java 高级网络编程_java高级网络编程—客户端与服务器
  6. oracle插入CLOB类型超过4000个字符报ORA-01704错的解决方法
  7. 学习笔记(01):MySQL数据库运维与管理-02-设置系统变量
  8. 创建RMAN CATALOG
  9. 玩转 SpringBoot 2 快速整合 | 丝袜哥(Swagger)
  10. oracle11 rman全备,Oracle 11g非归档模式下mount状态RMAN究竟能不能进行全备?