Python操作Mysql数据库入门——数据导入pandas(数据分析准备)

环境

Python 3.X

IDE : juyter notebook

使用Python连接数据库 import MySQLdb import pandas as pd #使用python连接数据库 conn =
MySQLdb. connect( host = '127.0.0.1', #本地地址 user = 'root', #一般默认用户名 passwd =
'********', #本地数据库登录密码(这里用你自己的密码!!!) db = 'test', #数据库名称(这里用你自己的数据库名称!!!) port
= 3306, #安装mysql默认的端口号 charset = 'utf8' #设置数据库统一编码 ) sql = ' SELECT *
FROM`tdb_goods`;' df = pd.read_sql(sql,conn) 导入表中所有数据并查看前五行 sql = ' SELECT *
FROM`tdb_goods`;' df = pd.read_sql(sql,conn) df.head()

![](http://5b0988e595225.cdn.sohucs.com/images/20170821/ce5c7bad71d747e2872adce490a6985c.png)

选你所想

一般来说,学sql增删查改基础中,查用的比较多,接下来我们简单使用一些sql查询

查找cate_id=3的记录:

sql1 = ' SELECT * FROM`tdb_goods`WHERE`cate_id` = 3;' df1 =
pd.read_sql(sql1,conn) df1

![](http://5b0988e595225.cdn.sohucs.com/images/20170821/90e6740aad6e4d0a829acb018b735c99.png)

查找价格大于5000的商品,注意这里默认按照goods_id排序的:

sql2 = ' SELECT * FROM`tdb_goods`WHERE`goods_price` > 5000;' df2 =
pd.read_sql(sql2,conn) df2

![](http://5b0988e595225.cdn.sohucs.com/images/20170821/15860bae3bac4c83b4706ccca283ebae.png)

加上ORDER BY `goods_prices`之后,就是按照价格升序排列:

sql2 = ' SELECT * FROM`tdb_goods`WHERE`goods_price` >
5000ORDERBY`goods_price;'df2 = pd.read_sql(sql2,conn)df2

![](http://5b0988e595225.cdn.sohucs.com/images/20170821/a61447bf7527429dbb19d5cf91d0d8f3.png)

sql默认的是按照升序排列,如果想按照降序排列,可以这样写:

sql2 = ' SELECT * FROM`tdb_goods`WHERE`goods_price` >
5000ORDERBY`goods_price`DESC;' df2 = pd.read_sql(sql2,conn) df2

![](http://5b0988e595225.cdn.sohucs.com/images/20170821/863078cce6614ca3a5d281aa740fe6a7.png)

查找所有的平板电脑:

sql3 = ' SELECT * FROM`tdb_goods`WHERE`goods_name`like"%平板电脑%";' df3 =
pd.read_sql(sql3,conn) df3

![](http://5b0988e595225.cdn.sohucs.com/images/20170821/a0e53117b14d4285a199e6b11c6b9563.png)

将数据库文件导出成csv df.to_csv('E:\goods_info.csv', encoding = 'utf-8', index = False)

![](http://5b0988e595225.cdn.sohucs.com/images/20170821/f3f2caf53aae4758a9a617c6c7e608ad.png)

可以看到,数据成功导出成csv了~

最后养成好习惯,断开与数据库的连接:

conn. close()

我们再次查询,发现报错了,说明确实已经断开了连接:

![](http://5b0988e595225.cdn.sohucs.com/images/20170821/5cde0559fb6548bcb87182188e620af4.png)

如果运行代码报错,很可能是你的 **数据库名和数据库登录密码没有修改** ~


![在这里插入图片描述](https://www.icode9.com/i/ll/?i=20210608151750993.gif)

上一篇:第五章:利用计算属性写一个购物车案例


下一篇:FT实现逆地理编码&报错处理