python代码写一个sql插入,每1000条提交一次
时间: 2024-02-03 17:04:18 浏览: 21
假设要插入的数据已经准备好了,可以按照以下方式实现每1000条数据提交一次的SQL插入:
```python
import pymysql
# 连接数据库
conn = pymysql.connect(host="localhost", user="root", password="password", database="test")
# 获取游标
cursor = conn.cursor()
# 数据列表
data_list = [('value1', 'value2', ...), ('value1', 'value2', ...), ...]
# 每次提交的数据条数
batch_size = 1000
# SQL插入语句
sql = "INSERT INTO table_name (column1, column2, ...) VALUES (%s, %s, ...)"
# 循环插入数据
for i in range(0, len(data_list), batch_size):
batch_data = data_list[i:i+batch_size]
cursor.executemany(sql, batch_data)
conn.commit()
# 关闭游标和数据库连接
cursor.close()
conn.close()
```
其中,`data_list`为待插入的数据列表,`batch_size`为每次提交的数据条数,`sql`为SQL插入语句。使用`executemany`方法可以一次性插入多条数据,使用`commit`方法提交事务,确保数据成功插入数据库。