使用 Python 的 Pandas 库,可以像 Excel 一样方便快捷地进行数据处理。MySQL则是现在最流行和使用的关系数据库。为了方便对数据库的操作,Pandas 中内置了 read_sql 和 to_sql 函数,方便我们从数据库中读取和保存数据。
数据准备
为了避免大家导入数据的麻烦,演示直接 读取 MySQL 自带的 mysql 库中的 user 表,如下图所示。
安装 MySQL 驱动
要在本地链接 MySQL,需要安装一个 MySQL 的客户端驱动,下载地址:https://dev.mysql.com/downloads/connector/python/8.0.html
根据自己的操作系统和位数,选择对应的版本下载即可。
安装 MySQL 的 Python 包
如果可以 pip 联网安装,那么可以直接使用 以下语句进行安装:
pip install mysql-connector-python
如果安装失败,则可以从:https://www.lfd.uci.edu/~gohlke/pythonlibs/下载 whl 文件进行安装,安装命令如下所示:
pip installC:\Users\Administrator\Downloads\mysql_connector_python-2.0.4-py2.py3-none-any.whl
使用 read_sql 读取数据
read_sql 函数从数据库中读取数据,常用的参数是:
1、sql,我们从数据库中读取数据的SQL
2、con,使用 mysql 包创建好的链接,包含数据库的用户名密码等等
执行代码,即可得到所查询的数据,如下图所示:
是不是很简单?一行代码就可以解决了从数据库中读取文件的问题,接下来我们来看看,如何把数据框中的数据,保存到数据库中。
使用 to_sql 保存数据
为了实验,咱们先创建一个 MySQL 的名字为 test 的数据库,如下图所示:
Pandas 的最新版本,只支持保存到 sqlite 数据库。因此,要保存数据到 MySQL,咱们还需要安装多一个 Python 包 SQLAlchemy,直接使用 pip 命令进行安装即可:
pip install SQLAlchemy
或者到 https://www.lfd.uci.edu/~gohlke/pythonlibs/#sqlalchemy 下载 whl 文件,使用以下命令进行安装:
pip installC:\Users\Administrator\Downloads\SQLAlchemy-1.2.8-cp36-cp36m-win_amd64.whl
使用 to_sql 函数保存数据到数据库,常用参数有以下几个:
1、要保存的表名
2、数据库的链接,同上面读取数据的时候使用的链接
3、if_exists,可以选择为append,也就是表存在的话,往里面追加数据
执行代码,即可把数据保存到 MySQL 中,如下图所示:
可见,Pandas 为我们对数据库的操作,做了非常好的封装,我们直接调用read_sql,即可读取数据,调用 to_sql,即可保存数据,达到了一键式存储的目的。
领取专属 10元无门槛券
私享最新 技术干货