使用writer()函数在Python中将数据写入SQLite3数据库
发布时间:2024-01-13 18:13:56
在Python中,我们可以使用内置的sqlite3模块来连接和操作SQLite3数据库。其中,sqlite3模块提供了一个Connection类,用于连接到数据库,以及一个Cursor类,用于执行SQL语句。
要将数据写入SQLite3数据库,我们可以使用writerow()函数将数据逐行写入CSV文件,然后使用以下步骤将CSV文件中的数据插入到SQLite3数据库中:
1. 导入必要的模块:
import csv import sqlite3
2. 连接到SQLite3数据库并创建一个游标:
conn = sqlite3.connect('database.db') # 连接数据库
cursor = conn.cursor() # 创建游标
3. 创建表格(可选):
cursor.execute('CREATE TABLE IF NOT EXISTS my_table (id INTEGER, name TEXT, age INTEGER)')
4. 打开CSV文件,读取数据并插入数据库:
with open('data.csv', 'r') as file:
csv_reader = csv.reader(file)
next(csv_reader) # 跳过首行(如果有标题)
for row in csv_reader:
cursor.execute('INSERT INTO my_table VALUES (?, ?, ?)', row)
5. 提交更改并关闭连接:
conn.commit() # 提交更改 conn.close() # 关闭连接
下面是一个完整的示例,演示如何使用writer()函数将数据写入SQLite3数据库:
import csv
import sqlite3
# 连接到SQLite3数据库并创建游标
conn = sqlite3.connect('database.db')
cursor = conn.cursor()
# 创建表格
cursor.execute('CREATE TABLE IF NOT EXISTS my_table (id INTEGER, name TEXT, age INTEGER)')
# 打开CSV文件,读取数据并插入数据库
with open('data.csv', 'r') as file:
csv_reader = csv.reader(file)
next(csv_reader) # 跳过首行(如果有标题)
for row in csv_reader:
cursor.execute('INSERT INTO my_table VALUES (?, ?, ?)', row)
# 提交更改并关闭连接
conn.commit()
conn.close()
这是一个简单的示例,将CSV文件中的数据一行一行地插入到SQLite3数据库中。你可以按照自己的需求修改代码来适应更复杂的写入操作。同时请确保数据库文件存在,并且你具备适当的权限来进行读写操作。
