用python读取sqlite数据库文件按照id的不同来保存到同一文件夹下的不同的csv中
时间: 2024-05-10 14:18:12 浏览: 99
Python读取sqlite数据库文件的方法分析
可以使用Python中的sqlite3和csv模块来实现这个任务。
首先,我们需要连接到sqlite数据库并执行查询以获取数据。然后,我们将数据按照id值分组,并将每个组的数据写入一个csv文件中。
以下是一个示例代码:
```python
import sqlite3
import csv
# 连接到sqlite数据库并获取数据
conn = sqlite3.connect('example.db')
c = conn.cursor()
c.execute("SELECT * FROM mytable")
data = c.fetchall()
# 按照id值分组数据
groups = {}
for row in data:
id_value = row[0]
if id_value not in groups:
groups[id_value] = []
groups[id_value].append(row)
# 将每个组的数据写入一个csv文件中
for id_value, group_data in groups.items():
filename = f"{id_value}.csv"
with open(filename, 'w', newline='') as csvfile:
writer = csv.writer(csvfile)
writer.writerow(['id', 'name', 'age']) # 写入表头
for row in group_data:
writer.writerow(row)
# 关闭数据库连接
conn.close()
```
上面的代码将从名为`example.db`的sqlite数据库中选择名为`mytable`的表,并将数据按照id值分组。然后,它将每个组的数据写入一个名为`id_value.csv`的csv文件中。最后,它将关闭数据库连接。
请注意,上面的代码中使用了`f-string`来创建csv文件名。如果你使用的是较旧的Python版本,请使用`str.format()`方法来创建文件名。
阅读全文