在Python中,如果你想要向SQLite数据库的表中插入多行数据,你可以使用`executemany`方法。以下是一个示例,展示了如何使用`executemany`方法批量插入数据到SQLite数据库的`Student`表中:
```python
import sqlite3
连接到数据库
con = sqlite3.connect('E:/python36/pytrade/sqlite3/first.db')
cur = con.cursor()
创建表
cur.execute('''
CREATE TABLE IF NOT EXISTS Student (
SNO char(10) UNIQUE PRIMARY KEY,
Sname char(20),
Ssex char(2),
Sage SMALLINT,
Sdept char(20)
)
''')
准备要插入的数据
rows = [
('', '张三', '男', 20, 'GIS'),
('', '李四', '女', 22, 'HR'),
('', '王五', '男', 21, 'IT')
]
使用executemany方法批量插入数据
cur.executemany('INSERT INTO Student (SNO, Sname, Ssex, Sage, Sdept) VALUES (?, ?, ?, ?, ?)', rows)
提交事务
con.commit()
关闭连接
con.close()
在这个示例中,`rows`变量包含了多个元组,每个元组代表一行要插入的数据。`executemany`方法接受两个参数:第一个参数是SQL语句,其中包含了占位符`?`;第二个参数是一个包含数据的元组列表。`format`方法用于将元组列表转换成逗号分隔的字符串,这样就可以替换SQL语句中的占位符了。
请注意,当你使用`executemany`方法时,确保你的数据与数据库表的结构匹配,否则可能会导致错误。