1、使用SQLite3库:
连接到SQLite数据库。

(图片来源网络,侵删)
执行SQL查询语句获取数据。
将结果写入CSV文件。
import sqlite3
连接到SQLite数据库
conn = sqlite3.connect('example.db')
cursor = conn.cursor()
执行SQL查询语句
cursor.execute("SELECT * FROM my_table")
rows = cursor.fetchall()
将结果写入CSV文件
with open('output.csv', 'w') as file:
for row in rows:
file.write(','.join([str(item) for item in row]) + '
')
关闭连接
conn.close() 2、使用Pandas库:
连接到数据库并读取数据到DataFrame。
将DataFrame导出为CSV或Excel文件。

(图片来源网络,侵删)
import pandas as pd
import sqlite3
连接到SQLite数据库
conn = sqlite3.connect('example.db')
使用Pandas读取SQL查询结果
df = pd.read_sql_query("SELECT * FROM my_table", conn)
导出结果到CSV文件
df.to_csv('output.csv', index=False)
关闭连接
conn.close() 3、使用SQLAlchemy:
创建数据库引擎。
执行SQL查询并将结果转换为DataFrame。
导出DataFrame为CSV文件。
from sqlalchemy import create_engine
import pandas as pd
创建数据库引擎
engine = create_engine('sqlite:///example.db')
使用Pandas读取SQL查询结果
df = pd.read_sql_query("SELECT * FROM my_table", engine)
导出结果到CSV文件
df.to_csv('output.csv', index=False) 4、使用PyMySQL连接MySQL数据库:

(图片来源网络,侵删)
连接到MySQL数据库。
执行SQL查询并将结果转换为DataFrame。
导出DataFrame为CSV文件。
import pandas as pd
import pymysql
连接到MySQL数据库
conn = pymysql.connect(
host='localhost',
user='username',
password='password',
db='database_name'
)
使用Pandas读取SQL查询结果
df = pd.read_sql_query("SELECT * FROM my_table", conn)
导出结果到CSV文件
df.to_csv('output.csv', index=False)
关闭连接
conn.close() 5、使用CSV模块:
连接到数据库并执行查询。
使用csv.writer将结果写入CSV文件。
import csv
import mysql.connector
连接到MySQL数据库
conn = mysql.connector.connect(
host='localhost',
user='username',
password='password',
db='database_name'
)
cursor = conn.cursor()
执行SQL查询语句
cursor.execute("SELECT * FROM your_table_name")
使用csv.writer将结果写入CSV文件
with open('output.csv', 'w', newline='') as f:
writer = csv.writer(f)
writer.writerow([i[0] for i in cursor.description]) # 写入列名
writer.writerows(cursor.fetchall()) # 写入数据行
关闭连接
cursor.close()
conn.close() 6、处理大数据量导出:
分批次读取和导出数据,以减少内存压力。
import pandas as pd
import sqlite3
连接到SQLite数据库
conn = sqlite3.connect('example.db')
chunk_size = 1000 # 每次读取1000行数据
分批次读取和导出数据
chunks = pd.read_sql_query("SELECT * FROM my_table", conn, chunksize=chunk_size)
for i, chunk in enumerate(chunks):
chunk.to_csv(f'output_{i}.csv', index=False)
关闭连接
conn.close() 以上就是关于“python 数据库导出_导出数据库”的问题,朋友们可以点击主页了解更多内容,希望可以够帮助大家!
本文来源于互联网,如若侵权,请联系管理员删除,本文链接:https://www.9969.net/69011.html