使用python批量插入数据到mysql的三种方法
自动化单条insert
# -*- coding:utf-8 -*-
import time
from pymysql import *
# 装饰器,计算插入50000条数据需要的时间
def timer(func):
def decor(*args):
start_time = time.time()
func(*args)
end_time = time.time()
d_time = end_time - start_time
print("the running time is : ", d_time)
return decor
@timer
def add_test_users():
conn = connect(host='主机名', port='端口号', user='用户名', password='密码', database='数据库名', charset='utf8')
cs = conn.cursor() # 获取游标
for num in range(0, 58000):
try:
sql = "insert into '表名'(字段名) values(值)"
cs.execute(sql)
except Exception as e:
return
conn.commit() # 提交
cs.close()
conn.close()
print('OK')
add_test_users()
- 单条insert的话插入5w条数据大约用时5秒左右,相对来说效率不高
拼接sql语句,只执行一次insert
# -*- coding:utf-8 -*-
import time
from pymys

本文介绍了Python向MySQL批量插入数据的三种方法:自动化单条insert、拼接SQL语句和使用`load data infile`。对比中指出,使用`load data infile`方法效率最高,推荐在处理大量数据时使用。在Python操作MySQL时,注意设置autocommit或适时使用commit()确保数据提交。
最低0.47元/天 解锁文章
1156

被折叠的 条评论
为什么被折叠?



