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启动办公软件进程(word、excel、ppt、以及wps的et、wps、wpp)
Apr 09 Python
利用Python画ROC曲线和AUC值计算
Sep 19 Python
Python生成8位随机字符串的方法分析
Dec 05 Python
Python实现的栈(Stack)
Jan 26 Python
实例讲解Python爬取网页数据
Jul 08 Python
windows下numpy下载与安装图文教程
Apr 02 Python
对python 调用类属性的方法详解
Jul 02 Python
Python 类方法和实例方法(@classmethod),静态方法(@staticmethod)原理与用法分析
Sep 20 Python
Python大数据之使用lxml库解析html网页文件示例
Nov 16 Python
python中p-value的实现方式
Dec 16 Python
.dcm格式文件软件读取及python处理详解
Jan 16 Python
利用python如何实现猫捉老鼠小游戏
Dec 04 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
中国收音机工业发展史
2021/03/02 无线电
PHP操作数组相关函数
2011/02/03 PHP
php实现读取超大文件的方法
2014/07/28 PHP
PHP中执行cmd命令的方法
2014/10/11 PHP
Cygwin中安装PHP方法步骤
2015/07/04 PHP
驱动事件的addEvent.js代码
2007/03/27 Javascript
js 点击按钮弹出另一页,选择值后,返回到当前页
2010/05/26 Javascript
jQuery对象和Javascript对象之间转换的实例代码
2013/03/20 Javascript
js 调用父窗口的具体实现代码
2013/07/15 Javascript
JavaScript实现页面5秒后自动跳转的方法
2015/04/16 Javascript
jQuery实现仿腾讯微博滑出效果报告每日天气的方法
2015/05/11 Javascript
Angularjs中ng-repeat的简单实例
2017/08/25 Javascript
Angular设置别名alias的方法
2018/11/08 Javascript
vue2.0实现的tab标签切换效果(内容可自定义)示例
2019/02/11 Javascript
JavaScript设计模式之策略模式实现原理详解
2020/05/29 Javascript
Nuxt.js nuxt-link与router-link的区别说明
2020/11/06 Javascript
JavaScript实现筛选数组
2021/03/02 Javascript
Python中处理字符串的相关的len()方法的使用简介
2015/05/19 Python
Python编程django实现同一个ip十分钟内只能注册一次
2017/11/03 Python
python实现决策树分类算法
2017/12/21 Python
Django 框架模型操作入门教程
2019/11/05 Python
Python换行与不换行的输出实例
2020/02/19 Python
Python如何执行精确的浮点数运算
2020/07/31 Python
Python爬取12306车次信息代码详解
2020/08/12 Python
CSS3 伪类选择器 nth-child()说明
2010/07/10 HTML / CSS
Joseph官网:英国小众奢侈品牌
2019/05/17 全球购物
AP澳洲中文网:澳洲正品直邮,包税收件无忧
2019/07/12 全球购物
安德玛菲律宾官网:Under Armour菲律宾
2020/07/28 全球购物
C语言笔试题
2014/09/04 面试题
专科毕业生学习生活的自我评价
2013/10/26 职场文书
JAVA程序员自荐书
2014/01/30 职场文书
师德师风个人反思
2014/04/28 职场文书
在职党员进社区活动总结
2014/07/05 职场文书
大学生党员批评与自我批评范文
2014/10/14 职场文书
2015年信息中心工作总结
2015/05/25 职场文书
Windows server 2012 配置Telnet以及用法详解
2022/04/28 Servers