python 更新数据库历史_python 实现数据库中数据添加、查询与更新的示例代码
一、前言
最近做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 实现数据库中数据添加、查询与更新的示例代码相关推荐
- python 去重 字典_python按照list中字典的某key去重的示例代码
一.需求说明 当我们写爬虫的时候,经常会遇到json格式的数据,它通常是如下结构: data = [{'name':'小K','score':100}, {'name':'小J','score':98 ...
- python视频行人检测_python+opencv3.4.0 实现HOG+SVM行人检测的示例代码
参照opencv官网例程写了一个基于python的行人检测程序,实现了和自带检测器基本一致的检测效果. opencv版本:3.4.0 训练集和opencv官方用了同一个,可以从http://pasca ...
- python查询数据库后更新_python 实现数据库中数据添加、查询与更新的示例代码...
一.前言 最近做web网站的测试,遇到很多需要批量造数据的功能:比如某个页面展示数据条数需要达到10000条进行测试,此时手动构造数据肯定是不可能的,此时只能通过python脚本进行自动构造数据:本次 ...
- python代码中怎么增加数据_python 实现数据库中数据添加、查询与更新的示例代码...
一.前言 最近做web网站的测试,遇到很多需要批量造数据的功能:比如某个页面展示数据条数需要达到10000条进行测试,此时手动构造数据肯定是不可能的,此时只能通过python脚本进行自动构造数据:本次 ...
- python中if else语句_python 中if else 语句的作用及示例代码
引入:if-else的作用,满足一个条件做什么,否则做什么. if-else语句语法结构 if 判断条件: 要执行的代码 else: 要执行的代码 判断条件:一般为关系表达式或bool类型的值 执行过 ...
- python绘制三维曲面图-python中Matplotlib实现绘制3D图的示例代码
Matplotlib 也可以绘制 3D 图像,与二维图像不同的是,绘制三维图像主要通过 mplot3d 模块实现.但是,使用 Matplotlib 绘制三维图像实际上是在二维画布上展示,所以一般绘制三 ...
- Python之Pandas:利用pandas实现行数据添加,即将字典格式的数据,按照行数据,从头开始循环添加到dataframe中
Python之Pandas:利用pandas实现行数据添加,即将字典格式的数据,按照行数据,从头开始循环添加到dataframe中e中 目录 利用pandas实现行数据添加,即将字典格式的数据,按照行 ...
- 怎么把竖列中的数相加python_关于python中pandas.DataFrame对行与列求和及添加新行与列示例代码...
pandas是python环境下最有名的数据统计包,而DataFrame翻译为数据框,是一种数据组织方式,这篇文章主要给大家介绍了关于python中pandas.DataFrame对行与列求和及添加新 ...
- python if else语句例子,python 中if else 语句的作用及示例代码
引入:if-else的作用,满足一个条件做什么,否则做什么. if-else语句语法结构 if 判断条件: 要执行的代码 else: 要执行的代码 判断条件:一般为关系表达式或bool类型的值 执行过 ...
最新文章
- js 动态 添加 tabel 表格
- csrf攻击防御 php,Yii2.0防御csrf攻击方法
- 20201028 《计算感知》第4节课 笔记
- 【学术相关】研究生通常都有怎样的作息时间呢?
- python 温度插值nan处理_Python处理inf和Nan值,pytorch,nan,数值
- 跨域资源共享CORS详解
- 分享一下:推荐一个网站,练习CSS3
- FoundationDB 学习 - 事务流程
- MATLAB 出一张好看的图
- L298电机驱动原理图+PCB
- 谷歌浏览器控制台使用
- python爬虫之批量下载小说
- ShellExecuteEX打开iqy文件导致excel hang的原因分析
- m73p黑苹果_M93P一次性拔草小主机,黑苹果,软路由。
- nbu备份恢复catalog
- 联发科 MTK6771 安卓核心板 安卓主板定制开发方案
- 推荐mysql内存参数设置值
- Java基础之if练习打印星期天
- 日本人骑着22的自行车就上了高速!
- VSCode前端开发工具插件--LiveServer无法实时刷新网页