python 如何使用cursor.executemany()批量向table1中插入数据
时间: 2024-11-09 10:23:00 浏览: 36
在Python中,使用sqlite3库操作数据库时,如果你想批量地使用`cursor.executemany()`方法向table1中插入数据,你需要先创建一个元组列表,其中每个元素是一个SQL插入语句的一行。下面是一个示例:
```python
import sqlite3
# 连接到SQLite数据库
conn = sqlite3.connect('your_database.db') # 替换为你的数据库文件路径
cursor = conn.cursor()
# 假设你要插入的数据存储在一个二维列表里,每一行对应一条插入记录
data_to_insert = [
('name1', 'address1', 'school1', 100),
('name2', 'address2', 'school2', 200),
('name3', 'address3', 'school3', 300)
]
# 定义SQL插入语句(这里假设table1的列名与提供的元组顺序一致)
insert_query = "INSERT INTO table1 (name, address, school, price) VALUES (?, ?, ?, ?)"
# 使用executemany方法批量插入数据
try:
cursor.executemany(insert_query, data_to_insert)
conn.commit() # 提交事务
except sqlite3.Error as e:
print(f"Error occurred: {e}")
finally:
# 关闭游标和连接
cursor.close()
conn.close()
```
在这个例子中,`executemany()`函数接收两个参数:一个是SQL模板,另一个是包含所有参数值的元组列表。这样能大大提高插入大量数据的效率。
阅读全文