vlambda博客
学习文章列表

仅用Python三行代码,实现数据库和excel之间的导入导出!

一、前言

之前我分享过两次python的高效编程技巧,分别是,


python一行代码生成详细数据分析报告:

Replay Share Like

0/0

进度条,百分之0
00:00
/
05:22
05:22
全屏

继续观看

仅用Python三行代码,实现数据库和excel之间的导入导出!

Original
,
仅用Python三行代码,实现数据库和excel之间的导入导出!
老男孩的平凡之路


python一行代码实现网页爬虫:

Replay Share Like

0/0

进度条,百分之0
00:00
/
01:50
01:50
全屏

继续观看

仅用Python三行代码,实现数据库和excel之间的导入导出!

Original
,
仅用Python三行代码,实现数据库和excel之间的导入导出!
老男孩的平凡之路


这次,我们分享一期,用python三行代码,实现数据库和excel之间的导入导出!

二、python代码

首先,看一下MySQL数据库中的数据:

表名:college_t1

表数据:共4行数据,大学排名数据

2.1 从MySQL数据库导入csv

开始编写python代码,把MySQL数据导出到excel。

导入需要的库:

from sqlalchemy import create_engine # 用于创建数据库连接import pandas as pd # 用来存入excel文件

最核心的三行代码:

# 1、创建数据库连接engine = create_engine('mysql+pymysql://root:123456@localhost/db_test')# 2、读取MySQL数据df1 = pd.read_sql(sql="SELECT * FROM db_test.college_t1", con=engine)# 3、导出CSV文件df1.to_csv('大学数据.csv', index=False)

用create_engine创建数据库连接,格式为:

这样,数据库连接就创建好了。

然后用pandas自带的read_sql函数,读取MySQL数据,传入SELECT的sql语句,和数据库连接,这2个参数。

最后,用我们最熟悉的to_csv把数据保存到csv,完成!

2.2 从csv导入MySQL数据库

下面,把刚才生成的csv文件,导入到MySQL数据库的另一个表:

# 1、读取CSV文件df2 = pd.read_csv('大学数据.csv')# 2、导入MySQL数据库df2.to_sql(name='college_t2', con=engine, index=False, if_exists='replace')

首先,用pandas的read_csv函数读取csv文件。

然后,用pandas的to_sql函数,把数据存入MySQL数据库:

name='college_t2' #mysql数据库中的表名

con=engine # 数据库连接

index=False #不包含索引字段

if_exists='replace' #如果表中存在数据就替换掉,还支持append(追加数据)

非常方便地完成了反向导入,即:从csv向数据库的导入。

三、讲解视频

同步讲解视频:

Replay Share Like

0/0

进度条,百分之0
00:00
/
03:28
03:28
全屏

继续观看

仅用Python三行代码,实现数据库和excel之间的导入导出!

Original
,
仅用Python三行代码,实现数据库和excel之间的导入导出!
老男孩的平凡之路


四、总结

三行代码实现数据库和excel之间的导入导出。


  • 第一行,创建数据库连接。

  • 第二行,读取源数据(read_sql or read_csv)

  • 第三行,存入数据(to_csv or to_sql)


需要说明的是:

这里的MySQL数据库,可以换成任意其他类型数据库,比如Oracle、sqlserver等,只要创建对应的数据库连接就可以。

这里的csv,可以换作excel、txt等,其他可以读取为DataFrame格式的任意文件类型。




其他高效python编程,推荐阅读: