如果使用executemany对数据进行批量插入的话,要注意一下事项:
conn = MySQLdb.connect(host = “localhost”, user = “root”, passwd = “password”, db = “myDB”, charset=’utf8′)
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和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。 详见:
http://lengyueblog.eicp.net/?p=44
分享到:
相关推荐
本文详细介绍了如何在 Python 中使用 `MySQLdb` 来操作 MySQL 数据库。从安装步骤到基本的 CRUD 操作,再到进阶的事务处理和批量操作,旨在帮助开发者快速掌握 `MySQLdb` 的使用方法。通过以上内容的学习,读者应能...
### Python MySQLdb 学习总结 #### 一、MySQLdb简介 MySQLdb 是 Python 社区为 MySQL ...以上是对 Python MySQLdb 模块的一些基本使用和注意事项的总结,希望能够帮助读者更好地理解和使用 MySQLdb 进行数据库开发。
Python中的MySQLdb模块是用于与MySQL数据库交互的重要工具...以上就是关于Python中使用MySQLdb模块进行MySQL数据库操作的主要知识点。在实际开发中,正确理解和使用这些概念能帮助我们更高效、更安全地处理数据库操作。
Python中的`mysqldb`模块是用于连接和操作MySQL数据库的一个库,它是Python的一个MySQL数据库适配器。本文将详细讲解如何使用`mysqldb`进行数据库的基本操作,包括连接、写入、更新、查询和删除。 首先,我们需要...
- 在Python脚本中,使用`import MySQLdb`引入MySQLdb模块,这样就可以使用其提供的各种功能。 3. **建立数据库连接**: - 使用`MySQLdb.connect()`函数建立与MySQL数据库的连接。需要提供主机名(默认localhost)...
首先,要使用Python与MySQL数据库进行交互,需要安装并使用MySQLdb模块,这是一个Python的数据库接口,支持MySQL数据库。安装MySQLdb模块可以通过Python的包管理工具pip来完成,使用命令“pip install MySQL-python...
这个例子展示了如何使用Python的MySQLdb模块进行基本的数据库操作,包括连接、创建表、插入数据和查询数据。在实际开发中,你可能还需要处理更复杂的SQL语句,例如更新、删除等操作,以及事务管理、错误处理等高级...
Python DB-API提供的其他常用方法包括`cursor.execute(sql, args)`用于执行SQL语句,`cursor.fetchall()`用于获取所有查询结果,`cursor.fetchone()`用于获取单条数据,以及`cursor.executemany(sql, args_list)`...
本文详细介绍了如何使用`MySQLdb`模块在Python中操作MySQL数据库。从建立连接、执行SQL语句到处理查询结果,再到异常处理和高级功能,涵盖了`MySQLdb`的基本使用流程。通过这些内容的学习,开发者可以更加熟练地使用...
本文将详细介绍如何使用Python中的`MySQLdb`库来操作MySQL数据库。 #### 二、环境配置与安装 在开始之前,确保你的环境中已经安装了以下组件: - **Python**:推荐使用Python 3.x版本。 - **MySQL Server**:用于...
在上面的代码中,我们使用 `MySQLdb` 库来建立连接: ``` conn = MySQLdb.connect(host='localhost', user='root', passwd='admin', db='example') ``` 这里我们使用 `connect` 函数来建立连接,需要提供四个参数:...
在Python编程中,MySQL是一个广泛使用的数据库管理系统,用于存储和管理数据。Python的MySQLdb库提供了与MySQL数据库交互的能力,使得在服务器端进行快速开发变得更加便捷。本篇将详细介绍如何使用Python操作MySQL。...
Python连接MySQL是数据库操作中的常见任务,特别是在数据处理和Web开发中。以下是对标题和描述中涉及的知识点的详细说明: 1. **Python的MySQLdb模块**:在Python中,MySQLdb是连接MySQL数据库的一个常用库,它为...
在数据库操作中,Python 提供了多种数据库接口,如 MySQLdb(用于 MySQL)、psycopg2(用于 PostgreSQL)等,使得开发者能够轻松地与不同类型的数据库进行交互。 1. **连接数据库**: 使用 Python 的数据库驱动,...
- 在Python中与MySQL数据库建立连接是通过`MySQLdb`模块实现的。此模块提供了与MySQL服务器通信的能力。 - 代码示例:`conn = MySQLdb.connect(host='localhost', user='root', passwd='admin')` - `host`:MySQL...
### Python 连接 MySQL 数据库详解 在进行Python与MySQL数据库的交互时,掌握正确的...这些内容涵盖了文档中提到的所有知识点以及相关的扩展内容,希望能帮助读者更好地理解和应用Python与MySQL数据库的连接与操作。
Python在与MySQL数据库交互时,提供了多种连接方式,包括`mysql.connector`、`pymysql`和`MySQLdb`。这些库都遵循PEP 249,即Python Database API Specification v2.0,确保了它们具有相似的API,使得在不同模块间...