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生成器generator用法示例
Aug 10 Python
python使用wxpy轻松实现微信防撤回的方法
Feb 21 Python
python微信聊天机器人改进版(定时或触发抓取天气预报、励志语录等,向好友推送)
Apr 25 Python
PYTHON绘制雷达图代码实例
Oct 15 Python
Pytorch 实现权重初始化
Dec 31 Python
selenium WebDriverWait类等待机制的实现
Mar 18 Python
Django {{ MEDIA_URL }}无法显示图片的解决方式
Apr 07 Python
python怎么判断素数
Jul 01 Python
pandas使用函数批量处理数据(map、apply、applymap)
Nov 27 Python
Pandas中两个dataframe的交集和差集的示例代码
Dec 13 Python
如何理解python接口自动化之logging日志模块
Jun 15 Python
python数字类型和占位符详情
Mar 13 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电台频率大全 - 7 吉林省
2020/03/11 无线电
利用 window_onload 实现select默认选择
2006/10/09 PHP
php中的一个中文字符串截取函数
2007/02/14 PHP
PHP-CGI进程CPU 100% 与 file_get_contents 函数的关系分析
2011/08/15 PHP
PHP APC缓存配置、使用详解
2014/03/06 PHP
laravel 实现关闭CSRF(全部关闭、部分关闭)
2019/10/21 PHP
简单通用的JS滑动门代码
2008/12/19 Javascript
用cssText批量修改样式
2009/08/29 Javascript
javascript学习笔记(十四) window对象使用介绍
2012/06/20 Javascript
基于jQuery实现网页进度显示插件
2015/03/04 Javascript
JS+CSS实现自动切换的网页滑动门菜单效果代码
2015/09/14 Javascript
图片旋转、鼠标滚轮缩放、镜像、切换图片js代码
2020/12/13 Javascript
网页中右键功能的实现方法之contextMenu的使用
2017/02/20 Javascript
js实现三级联动效果(简单易懂)
2017/03/27 Javascript
微信小程序对接七牛云存储的方法
2017/07/30 Javascript
微信小程序getPhoneNumber获取用户手机号
2017/09/29 Javascript
基于jQuery实现定位导航位置效果
2017/11/15 jQuery
Angular2管道Pipe及自定义管道格式数据用法实例分析
2017/11/29 Javascript
vue开发环境配置跨域的方法步骤
2019/01/16 Javascript
详解vue几种主动刷新的方法总结
2019/02/19 Javascript
详解vue 动态加载并注册组件且通过 render动态创建该组件
2019/05/30 Javascript
vue实现多组关键词对应高亮显示功能
2019/07/25 Javascript
vue瀑布流组件实现上拉加载更多
2020/03/10 Javascript
vue + el-form 实现的多层循环表单验证
2020/11/25 Vue.js
vuex的使用和简易实现
2021/01/07 Vue.js
[53:52]EG vs VGJ.T 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
python数据库操作常用功能使用详解(创建表/插入数据/获取数据)
2013/12/06 Python
用python爬取历史天气数据的方法示例
2019/12/30 Python
Python matplotlib绘制图形实例(包括点,曲线,注释和箭头)
2020/04/17 Python
上海方立数码笔试题
2013/10/18 面试题
学生违反校规检讨书
2014/10/28 职场文书
2014年建筑工作总结
2014/11/26 职场文书
开学典礼观后感
2015/06/15 职场文书
优秀创业计划书分享
2019/07/19 职场文书
MySQL 查询速度慢的原因
2021/05/25 MySQL
关于SpringBoot 使用 Redis 分布式锁解决并发问题
2021/11/17 Redis