Python3操作数据库mysql-超哥连载(一)

  • Post author:
  • Post category:mysql



目录索引


1.什么时候会用到

2.具体怎么用

2.1安装pymsql

2.2连接数据库

2.2.1-连接数据库:

2.2.2-获取游标:

2.3操作数据库

2.3.1-执行sql的方法

2.3.2查询操作

2.3.3-更新操作

2.3.4-删除操作

2.3.5-插入操作

Python3操作数据库mysql连载(四)


1.什么时候会用到

在我们进行接口用例断言或者UI用例断言的时候,我们可能需要去数据库取数据,还有平时如果需要自动化造数据,有时候也需要代码操作数据库,所以python操作数据库还是蛮重要的,今天超哥来带你从头学,掌声响起来,虽然我听不到,嘿嘿。

超哥一贯的风格,

简单粗暴

,上具体代码:


2.具体怎么用


2.1安装pymsql

python安装pymsql,一般我们优先使用pip 命令:pip install pymysql ,这里说明一点,pymysql是python3支持的数据库操作模块,之前的mysqldb模块不适用python3,所以弃之。

安装如图:

图片


2.2连接数据库

连接前的准备工作,首先需要准备好可以连接的数据库服务器地址,我的如下:

IP:127.0.0.1

Port:3306

user:root

pwd:xxxx

database:testdb


2.2.1-连接数据库:

pymysql.connect()连接数据库函数,需要传递host(主机地址),user(数据库登录用户),passwd(密码),db(要连接的数据库名)参数

#导入安装好的pymysql包import pymsql#打开数据库连接conn = pymysql.connect(host='127.0.0.1',user = "root",passwd = "123456",db = "testdb")


2.2.2-获取游标:

要想操作数据库,光连接数据是不够的,必须拿到操作数据库的游标,才能进行后续的操作,比如读取数据、添加数据。通过获取到的数据库连接实例conn下的cursor()方法来创建游标。游标用来接收返回结果

#获取游标,用来查询,写入等cursor=conn.cursor()

说明:cursor返回一个游标实例对象,其中包含了很多操作数据的方法,比如执行sql语句。


2.3操作数据库


2.3.1-执行sql的方法

操作数据库无非就是执行sql的增删改查,执行sql语句有两种方法:execute和executemany,先来看看他两个的使用方法,后面的代码实例会做更详细的说明


execute(query,args=None)


函数作用:执行单条的sql语句,执行成功后返回受影响的行数

参数说明:

query:要执行的sql语句,字符串类型

args:可选的序列或映射,用于query的参数值。如果args为序列,query中必须使用%s做占位符;如果args为映射,query中必须使用%(key)s做占位符

#使用%s作为占位符,通过args传参sql = 'SELECT * from user_info where id = %s or id = %s or id = %s'#4执行sql,通过args传参,实现动态参数传递cursor.execute(sql,args=(1,2,3))


executemany(query,args=None)


函数作用:批量执行sql语句,比如批量插入数据,执行成功后返回受影响的行数

参数说明:

query:要执行的sql语句,字符串类型

args:嵌套的序列或映射,用于query的参数值

#使用%s作为占位符,通过args传参sql="insert into user_info values(%s,%s,%s)"#使用execute 传递嵌套序列参数insert=cur.executemany(sql,[(1,'小明',20),(2,'小红',10),(3,'小花',30)])

‍注意:

  1. 数据库性能瓶颈很大一部份就在于网络IO和磁盘IO,将多个sql语句放在一起,只执行一次IO,可以有效的提升数据库性能。推荐此方法

  2. .用executemany()方法一次性批量执行sql语句,固然很好,但是当数据一次传入过多到server端,可能造成server端的buffer溢出,也可能产生一些意想不到的麻烦。所以,合理、分批次使用executemany是个合理的办法

上面是两个操作函数,学完我们就可以一展身手了,数据库操作当然离不开增删改查,跟上节奏,记得分享下超哥公众号的文章,让更多学技术的人都有所收获,超哥爱你么么哒。

总结:

接下来就是使用上面的两个方法如何具体的对数据库进行增删改查,

明天咱们继续更新,记得关注超哥公众号,下次学习查看不迷路,微信直接搜索:橙好测试开发,你懂得。




北京橙好科技,SuperTesting,测试提升学院,专注测试提升,年薪冲刺40W!




功能测试想转型测试开发的同学可以关注以下公众号,更多干货在等你!



版权声明:本文为rainshine1190原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。