pymysql中使用excutemany批量插入数据和避免重复项

news/2023/6/7 22:55:10

在进行大量数据插入MySQL中时,使用excute的效率非常低,所以将列表数据插入数据库中可以使用excutemany()。
关于excute和excutemany的执行效率可以参考以下博客
Python使用pymysql模块的executemany()方法批量插入数据 提高Mysql数据库写入效率

再此介绍以下excutemany()方法:
executemany(query,args):能同时执行多条语句,强烈建议执行多条语句时使用executemany()。

  • query:sql语句
    例如: ‘INSERT INTO TABLE(id,language) values(%s,%s)’
  • args:模板字符串的参数,是一个列表,列表中的每一个元素必须是元组!!!
    例如:[(1,‘Java’),(2,‘Python’),(3,‘Golang’),(4,‘C’),(5,‘C++’)]

如果是嵌套列表可以使用以下方法将列表数据转为元组数据

results = [[1, ‘Java’], [2, ‘Python’], [3, ‘GoLang’], [4, ‘C’], [5, ‘C++’]]
print(list(map(tuple, results)))
输出结果:
[(1, ‘Java’), (2, ‘Python’), (3, ‘GoLang’), (4, ‘C’), (5, ‘C++’)]

executemany()的使用

db = pymysql.connect(host='localhost', user='root', password='001314', database='flask')cursor = db.cursor()
sql = "insert into tablename(id,keywords) value(%s,%s)"
results = [(1,'Java'),(2,'Python'),(3,'GoLang'),(4,'C'),(5,'C++')]
try:cursor.executemany(sql,results)
except:db.rollback()print("插入失败", e)
finally:db.commit()cursor.close()db.close()

以上代码当执行executemany出现Duplicate entry异常时,插入失败。
如果是用主键primary或者唯一索引unique区分了记录的唯一性,避免重复插入记录可以使用:
INSERT IGNORE INTO TABLE(id,language) values(%s,%s)
这样当有重复记录就会忽略,执行后返回数字0

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.exyb.cn/news/show-4561565.html

如若内容造成侵权/违法违规/事实不符,请联系郑州代理记账网进行投诉反馈,一经查实,立即删除!

相关文章

如何细分暴利关键词实现月入10万+

很多人都有着一颗炙热的心,怀揣着对网赚美好的憧憬投身于网赚行业,但是每当要投入其中的时候总是遇到一个问题,我该卖什么?卖什么赚钱?有没有市场?想着想着突然又开始迷茫,之前的文章大源总是介…

暴利项目赚钱月入5万,进来看看吧!

我们身边从不缺机遇,我们缺少的只是善于发现机遇的眼睛。任何行业在刚出现时都不明显,所以很多人都看不到机会,错过了赚钱的机会。然而,当这个行业成型后,一些人又开始观望,原因就是他们看不起新兴行业。当…

无需投资,小白在家也能闲鱼店创业赚钱,教你月入10000+丨国仁网络资讯

之前就写过闲鱼貝兼銭的文章,闲鱼这个平台里面五花八门的东西都有,各种貝兼銭玩法层出不穷。 今天这篇文章是我自己这几天研究后关于零成本闲鱼店群操作方法的总结。 可以说就算是一个小白也能按照我这篇文章一步步上手让你每个账号每天有稳定的出单量…

那些不起眼又非常暴利的项目

一、首先,什么叫不起眼? 1.很多人知道的大众需求,但是却鄙夷,不愿去做,也不知道可以赚这么多钱。 比如上图的月入三万的煎饼摊大妈。 2.很少人去关心、不知道的小众需求,小众意味着精准,只需少…

“我靠做抖音小店,月入过万”:35岁前, 千万别让“拼命打工”拖垮自己!...

钱对一个人来说,有多重要?从月薪3000拼死拼活终于升到月薪10000,可是每个月还是月光,出来工作快9年了,不仅0存款,还欠下一堆花呗信用卡的债。不敢结婚,因为结婚意味着要支出至少十万元&#xff…

不起眼的暴利项目,月利润上万

俗话说:盛世的文玩,乱世的金,大家对文玩古物这块了解多少?反正我是不懂,感觉都是有内涵有文化的人玩的高档玩意儿,虽对这个领域了解甚少,但我却知道它很值钱。没办法,文化少&#xf…

SpringMvc源码分析(四) 请求执行过程之执行MethodHandler

在上文SpringMvc源码分析(三)中我们分析了DispatcherServlet类中的doDispatcher方法, 并通过分析方法1和方法2了解了请求执行时是怎么获取MethodHandler链的,本文接上文继续分析方法3、方法4和方法5了解MethodHandler是如何执行的…

2022留学生落户申请在拿到批复之前要注意什么?

留学生落户上海现在落户上海是比较容易的,而在办理的过程之中也需要注意各种问题,在拿到批复之前需要注意下面三个问题,下面来看看这里面的情况: 1、在拿到落户批复之前不要有漏缴个税记录 留学生落户上海材料审核中,…