python pandas 数据库实战
时间: 2025-02-02 13:52:50 浏览: 45
### Python 和 Pandas 进行数据库操作的实战教程
#### 创建连接并读取数据
为了能够利用 Pandas 对数据库执行各种操作,首先需要建立到目标数据库(例如 MySQL 或 PostgreSQL)的连接。这通常通过 `SQLAlchemy` 来完成。
```python
from sqlalchemy import create_engine
import pandas as pd
engine = create_engine('mysql+pymysql://username:password@localhost/dbname')
df = pd.read_sql_table('table_name', engine)
```
这段代码展示了如何创建一个引擎实例来表示数据库,并使用 `read_sql_table()` 函数加载整个表的内容至 DataFrame 中[^1]。
#### 将数据写入数据库
当有新的数据集要保存回数据库时,可以借助于 `to_sql()` 方法:
```python
new_data.to_sql(name='target_table', con=engine, if_exists='append', index=False)
```
这里假设 new_data 是一个新的 DataFrame,上述命令会将其追加到名为 target_table 的现有表里;如果指定 `'replace'` 则会先删除旧表再重建新表。
#### 更新和删除记录
对于更复杂的 CRUD 操作,比如更新特定条件下的某些字段值或是根据一定标准移除部分条目,则可能需要用到 SQL 查询语句配合 execute() 执行原始查询:
```sql
UPDATE table SET column=value WHERE condition;
DELETE FROM table WHERE condition;
```
这些可以通过 SQLAlchemy Engine 提供的方法来进行调用:
```python
with engine.connect() as connection:
result = connection.execute(text("UPDATE ..."))
# or DELETE statement here...
```
需要注意的是,在进行这类修改之前应当充分测试以防止意外的数据丢失或破坏。
#### 实际应用案例
考虑这样一个场景——一家电商公司希望定期同步其在线销售平台上的订单信息到内部管理系统中用于报表生成和其他业务逻辑处理。此时就可以编写脚本周期性地从 API 获取最新订单列表转换成 DataFrame 后批量插入到本地的关系型数据库内,同时清理掉超过保留期限的历史交易记录保持系统性能最优。
阅读全文
相关推荐


















