请参考以下攻略:
Python实现将MySQL数据库表中的数据导出生成csv格式文件的方法
步骤一:安装依赖包
pip install mysql-connector-python pandas
mysql-connector-python
:用于连接MySQL数据库pandas
:用于处理数据和生成csv文件
步骤二:连接MySQL数据库
import mysql.connector
# 创建连接
conn = mysql.connector.connect(
host='localhost',
port=3306,
user='root',
password='password',
database='database_name'
)
# 创建游标
cursor = conn.cursor()
host
:数据库服务器地址port
:数据库端口号,默认为3306user
:数据库登录用户名password
:数据库登录密码database
:要连接的数据库名称
步骤三:查询数据
import pandas as pd
# 查询数据
sql = 'SELECT * FROM table_name'
cursor.execute(sql)
data = cursor.fetchall()
# 将数据转换为DataFrame格式
df = pd.DataFrame(data, columns=[i[0] for i in cursor.description])
SELECT * FROM table_name
:要查询的表名和字段。cursor.execute(sql)
:执行SQL查询语句。cursor.fetchall()
:获取所有查询结果。pd.DataFrame(data, columns=[i[0] for i in cursor.description])
:将数据转换为DataFrame格式,并指定列名。
步骤四:将数据保存为csv文件
# 将数据保存到csv文件中
df.to_csv('file_name.csv', encoding='utf-8-sig', index=False)
'file_name.csv'
:要保存的文件名。encoding='utf-8-sig'
:指定编码格式,确保中文不乱码。index=False
:不保存DataFrame索引。
示例一:
查询score表中所有数据,并导出为score.csv文件。
import mysql.connector
import pandas as pd
# 创建连接
conn = mysql.connector.connect(
host='localhost',
port=3306,
user='root',
password='password',
database='student'
)
# 创建游标
cursor = conn.cursor()
# 查询数据
sql = 'SELECT * FROM score'
cursor.execute(sql)
data = cursor.fetchall()
# 将数据转换为DataFrame格式
df = pd.DataFrame(data, columns=[i[0] for i in cursor.description])
# 将数据保存到csv文件中
df.to_csv('score.csv', encoding='utf-8-sig', index=False)
# 关闭游标和连接
cursor.close()
conn.close()
示例二:
查询orders表中订单日期为2021年1月的数据,并导出为202101_orders.csv文件。
import mysql.connector
import pandas as pd
# 创建连接
conn = mysql.connector.connect(
host='localhost',
port=3306,
user='root',
password='password',
database='order'
)
# 创建游标
cursor = conn.cursor()
# 查询数据
sql = "SELECT * FROM orders WHERE DATE_FORMAT(order_date, '%Y-%m') = '2021-01'"
cursor.execute(sql)
data = cursor.fetchall()
# 将数据转换为DataFrame格式
df = pd.DataFrame(data, columns=[i[0] for i in cursor.description])
# 将数据保存到csv文件中
df.to_csv('202101_orders.csv', encoding='utf-8-sig', index=False)
# 关闭游标和连接
cursor.close()
conn.close()
以上就是Python实现将MySQL数据库表中的数据导出生成csv格式文件的方法的完整攻略,希望对您有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python实现将MySQL数据库表中的数据导出生成csv格式文件的方法 - Python技术站