kerln888 发表于 2026-03-15 09:31
@FishC pandas读取excel后,如何把数据存储到mysql数 ...
使用 pandas 读取 Excel 并存储到 MySQL 数据库,可以按以下步骤操作:
1. 安装必要的库
首先确保已安装以下库:
pip install pandas openpyxl sqlalchemy pymysql
2. 示例代码
import pandas as pd
from sqlalchemy import create_engine
# 1. 读取 Excel 文件
df = pd.read_excel('data.xlsx', sheet_name='Sheet1')# 修改文件名和 sheet 名称
# 2. 创建数据库连接
# 格式:mysql+pymysql://用户名:密码@主机:端口/数据库名
engine = create_engine('mysql+pymysql://root:123456@localhost:3306/test_db')
# 3. 将 DataFrame 写入 MySQL
df.to_sql(
name='table_name', # 表名(若不存在会自动创建)
con=engine, # 数据库连接
index=False, # 不保存行索引
if_exists='replace' # 表存在时操作:replace(替换)/append(追加)/fail(报错)
)
print("数据存储成功!")
3. 参数说明
o read_excel():读取 Excel 文件
o create_engine():创建数据库连接
o to_sql() 关键参数:
name:目标表名
con:数据库连接对象
index:是否将 DataFrame 索引作为列存储
if_exists:
→ 'replace':删除原表重建
→ 'append':追加数据
→ 'fail':表存在时报错
4. 注意事项
o 确保 MySQL 服务已启动
o 数据库字符集建议使用 utf8mb4
o 大型数据集建议分批次写入
o 日期时间列会自动转换格式
如有问题,请检查数据库连接参数和权限设置。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
FishC 发表于 2026-3-15 09:32
使用 pandas 读取 Excel 并存储到 MySQL 数据库,可以按以下步骤操作:
1. 安装必要的库
@FishC dataFrame如何实现选取特定的行和列写入mysql呢??
kerln888 发表于 2026-03-15 09:35
FishC 发表于 2026-3-15 09:32
使用 pandas 读取 Exc ...
要选取DataFrame的特定行和列并写入MySQL,可以先用pandas进行数据选择,再通过to_sql方法写入数据库。以下是步骤示例:
import pandas as pd
from sqlalchemy import create_engine
# 假设 df 是已加载的DataFrame
# 选取特定列:例如列 'A' 和 'B'
selected_columns = df[['A', 'B']]
# 选取特定行和列:例如列 'A' 和 'B' 中满足条件的行
selected_data = df.loc > 10, ['A', 'B']]
# 创建MySQL连接引擎,替换为你的数据库信息
engine = create_engine('mysql+pymysql://用户名:密码@主机地址/数据库名')
# 将选定的DataFrame写入MySQL表
selected_data.to_sql('表名', con=engine, if_exists='replace', index=False)
关键点:
- 选取列:使用 df[['列名1', '列名2']]。
- 选取行和列:使用 df.loc[行条件, ['列名1', '列名2']]。
- 写入MySQL:通过 create_engine 建立连接,再用 to_sql 写入,if_exists='replace' 表示替换现有表,index=False 避免写入索引。
确保已安装 pandas、sqlalchemy 和 pymysql 库。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。