Python将DataFrame写入mysql,并加入try except报错处理语句
时间: 2024-04-11 18:29:13 浏览: 99
要将DataFrame写入MySQL,你可以使用`pandas`库的`to_sql()`方法。下面是一个示例代码,并添加了try-except语句来处理可能的错误:
```python
import pandas as pd
from sqlalchemy import create_engine
# 定义MySQL连接信息
db_host = 'localhost'
db_user = 'your_username'
db_password = 'your_password'
db_name = 'your_database_name'
# 创建DataFrame示例
data = {'Name': ['John', 'Mike', 'Sarah'],
'Age': [25, 30, 28]}
df = pd.DataFrame(data)
try:
# 建立与MySQL的连接
engine = create_engine(f'mysql+pymysql://{db_user}:{db_password}@{db_host}/{db_name}')
# 将DataFrame写入MySQL数据库
df.to_sql('table_name', con=engine, if_exists='replace', index=False)
print("DataFrame成功写入MySQL数据库!")
except Exception as e:
# 发生错误时的处理逻辑
print("发生了一个错误:", str(e))
```
在上面的示例中,你需要根据你的实际情况修改MySQL连接信息和DataFrame示例。`to_sql()`方法中的参数`'table_name'`是你要写入数据的表名。`if_exists='replace'`表示如果表已经存在,则替换原有表。
在try代码块中,我们建立了与MySQL的连接,并调用`to_sql()`方法将DataFrame写入数据库。如果没有发生任何错误,我们打印出成功的消息。
如果在执行过程中发生了错误,except代码块将捕获到该错误,并打印出错误信息。你可以根据需要在except代码块中添加其他处理逻辑,比如回滚事务或记录日志。
阅读全文