看字节大佬是如何用Python操作MySQL

254 篇文章 8 订阅
190 篇文章 3 订阅

工欲善其事,必先利其器。所以第一步,我们先下载第三方库。在这里,我用到的是pymysql库。

下载库:在命令行输入

pip install pymysql

下载后可检验一下是否成功下载。直接在命令行进入python然后导库即可

C:\Users\June>python

Python 3.6.3 |Anaconda, Inc.| (default, Oct 15 2017, 03:27:45) [MSC v.1900 64 bit (AMD64)] on win32

Type “help”, “copyright”, “credits” or “license” for more information.

import pymysql

接下来学习如何操作数据库了!!!

连接数据库

import pymysql

#连接数据库

db = pymysql.connect(host=‘127.0.0.1’,user=‘root’,passwd=‘your password’,db=‘news’,port=3306,charset=‘utf8’)

以上的参数是必填的

· host: 这个是ip地址,因为我这里是本地的,所以填127.0.0.1,也可以填localhost。

· user:用户名,如果你也是本地的,就填root好了

· passwd:这个是密码,填上你自己设的密码就可以了

· db:这个是数据库名,我这里选的是news数据库

· port:这个是端口,本地的一般都是3306

· charset:这个是编码方式,要和你数据库的编码方式一致,要不会连接失败

连接上了,怎么验证呢?这里我们可以选择查一条数据

在这里插入图片描述
代码解读:因为在连接数据库中,有时会发生连接失败等异常,所以这里就进行捕捉异常,这里的异常都是在 pymsql.Error 里面。上面的代码看不懂也没关系,因为我接下来会说,如果运行后有结果证明连接成功。

在用完后,一定要记得关闭数据库连接,防止资源泄露问题。

对数据进行查询

在这里插入图片描述
代码解读:

· cursor():这个是光标,用来执行mysql语句的,用完后也是需要关闭的

· excute():这个是执行语句,执行参数的mysql语句

· fetchone():这个是查看执行语句后的一条数据

· fetchall():这个是查看所有数据

在查询数据后,返回的是一整条数据,有没有可以按字典形式来查询的呢?来试试!

在这里插入图片描述查了之后,编译器想都不想就给了我这个错误,说这是个元组,不能这样操作。

虽然python没有提供,但是我们可以手动转成字典来查询啊

cursor这里有个属性:description。获取的是数据库每个栏位情况,如下:
在这里插入图片描述
所以,我们利用这个属性手动生成字典

在这里插入图片描述
考辛斯跟腱撕裂赛季报销 浓眉詹皇发声祝福

但是,上面的只是一条数据的,如果是多条的呢?再按上面的方法就行不通了。这时就需要用到map函数了
在这里插入图片描述这里很巧妙的利用了map函数,因为多条数据就可以进行迭代了,需要操作每条数据,这样就可以想到map函数

接下来我们再用面向对象的方法来用python进行查询数据库
在这里插入图片描述
这样就可以通过实例的方法来进行查询数据库了

我们还可以根据页数来进行查询指定的数据数
在这里插入图片描述利用的是mysql的limit关键字,还有其他的,比如进行排序分组的感兴趣的可以自己尝试下

增加数据到数据库
在这里插入图片描述
因为是增加数据,所以需要提交事务,这就需要用到conn .commit()来进行提交,在增加数据后,如果不提交,数据库就不会显示。

还有修改数据和删除数据就不贴出来了,只是把上面的sql变量的语句改成修改或者删除的语句就可以了,如果你还不会,建议练习下~

在这里还是要推荐下我自己建的Python自动化学习群:1033482984 ,群里都是学Python自动化测试的,如果你正在学习Python ,小编欢迎你加入,大家都是测试开发党,不定期分享干货(只有Python软件测试相关的),包括我自己整理的一份2021最新的Python自动化资料。微信公众号 【软件测试小dao】

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值