python executemany的使用及注意事项


Posted in Python onMarch 13, 2017

使用executemany对数据进行批量插入的话,要注意一下事项:

#coding:utf8
conn = MySQLdb.connect(host = “localhost”, user = “root”, passwd = “123456”, db = “myDB”)
cursor = conn.cursor()
sql = “insert into myTable (created_day,name,count) values(%s,%s,%s) ON DUPLICATE KEY UPDATE count=count+values(count)”
args=[("2012-08-27","name1",100),("2012-08-27","name1",200),("2012-08-27","name2",300)]
try:
  cursor.executemany(sql, args)
except Exception as e:
  print0(“执行MySQL: %s 时出错:%s” % (sql, e))
finally:
cursor.close()

conn.commit()

conn.close()

这里args是一个包含多个元组的数组,每个元组对应mysql当中的一条数据,注意这里的created_day对应的%s没有引号。这里推测executemany自己首先对sql语句进行正则匹配%s然后在此基础上,对字符串进行嵌入处理,如果这里%s加上引号的话,插入mysql当中会出现”0000-00-00″类型的错误日期。

如果一次性要插入很多条数据的话,在这里强烈 推荐使用executemany,从自己体会来讲,一条一条的insert需要2-3个小时时间的数据插入,使用executemany只需要2-3秒!!!

在这里executemany和ON DUPLICATE KEY UPDATE联合使用的时候如果按照sql常规模式,即:sql=”insert into myTable (created_day,name,count) values(%s,%s,%s) ON DUPLICATE KEY UPDATE count=count+%s”会报bug:not all arguments converted during string formatting

以上所述是小编给大家介绍的python executemany的使用及注意事项,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
Python实现查找系统盘中需要找的字符
Jul 14 Python
Djang中静态文件配置方法
Jul 30 Python
Python实现的栈(Stack)
Jan 26 Python
Python内置random模块生成随机数的方法
May 31 Python
Django框架之登录后自定义跳转页面的实现方法
Jul 18 Python
python字符串替换re.sub()方法解析
Sep 18 Python
使用python将最新的测试报告以附件的形式发到指定邮箱
Sep 20 Python
python正则表达式实例代码
Mar 03 Python
Python爬虫回测股票的实例讲解
Jan 22 Python
Pytorch 使用tensor特定条件判断索引
Apr 08 Python
如何用python绘制雷达图
Apr 24 Python
Python爬虫之自动爬取某车之家各车销售数据
Jun 02 Python
Python的标准模块包json详解
Mar 13 #Python
python中pandas.DataFrame排除特定行方法示例
Mar 12 #Python
Python中functools模块函数解析
Mar 12 #Python
python中pandas.DataFrame的简单操作方法(创建、索引、增添与删除)
Mar 12 #Python
Python中str.format()详解
Mar 12 #Python
python中pandas.DataFrame对行与列求和及添加新行与列示例
Mar 12 #Python
Python中关键字nonlocal和global的声明与解析
Mar 12 #Python
You might like
全国FM电台频率大全 - 20 广西省
2020/03/11 无线电
php中数组首字符过滤功能代码
2012/07/31 PHP
php实现压缩合并js的方法【附demo源码下载】
2016/09/22 PHP
PHP微信红包生成代码分享
2016/10/06 PHP
php版银联支付接口开发简明教程
2016/10/14 PHP
php从数据库读取数据,并以json格式返回数据的方法
2018/08/21 PHP
Yii框架 session 数据库存储操作方法示例
2019/11/18 PHP
javascript 日期常用的方法
2009/11/11 Javascript
js前台判断开始时间是否小于结束时间
2012/02/23 Javascript
什么是json和jsonp,jQuery json实例详详细说明
2012/12/11 Javascript
使用jquery mobile做幻灯播放效果实现步骤
2013/01/04 Javascript
jQuery.extend()、jQuery.fn.extend()扩展方法示例详解
2014/05/08 Javascript
JsRender for object语法简介
2014/10/31 Javascript
JavaScript简单获取页面图片原始尺寸的方法
2016/06/21 Javascript
javascript数组对象常用api函数小结(连接,插入,删除,反转,排序等)
2016/09/20 Javascript
JS焦点图,JS 多个页面放多个焦点图的实例
2016/12/08 Javascript
使用snowfall.jquery.js实现爱心满屏飞的效果
2017/01/05 Javascript
提高JavaScript执行效率的23个实用技巧
2017/03/01 Javascript
JS实现的添加弹出层并完成锁屏操作示例
2017/04/07 Javascript
js闭包学习心得总结
2018/04/17 Javascript
H5+C3+JS实现五子棋游戏(AI篇)
2020/05/28 Javascript
微信公众号平台接口开发 获取微信服务器IP地址方法解析
2019/08/14 Javascript
探索Python3.4中新引入的asyncio模块
2015/04/08 Python
Python探索之Metaclass初步了解
2017/10/28 Python
快速了解python leveldb
2018/01/18 Python
wxPython实现带颜色的进度条
2019/11/19 Python
pytorch GAN生成对抗网络实例
2020/01/10 Python
pytorch中使用cuda扩展的实现示例
2020/02/12 Python
基于Python制作一副扑克牌过程详解
2020/10/19 Python
python操作toml文件的示例代码
2020/11/27 Python
详解CSS3 filter:drop-shadow滤镜与box-shadow区别与应用
2020/08/24 HTML / CSS
保送生自荐信范文
2013/10/06 职场文书
学院领导推荐信
2013/10/30 职场文书
2015年检验员工作总结范文
2015/04/30 职场文书
毕业生自我鉴定范文
2019/05/13 职场文书
Python绘画好看的星空图
2022/03/17 Python