前言

数据库的操作在测试工作中也是经常使用的,通过一些一些工具来操作数据库的方法大家都应该了解,那么Python操作数据库的大家了解吗?

今天测试君通过本篇文章介绍下如何通过Python来操作mysql数据库。

pymysql

pymysql属于Python的一个第三方库,用例操作mysql数据库。

安装:pip install pymysql

源码地址:https://github.com/PyMySQL/PyMySQL/

连接数据库

操作数据库前肯定需要连接数据库了,pymysql通过connext的方法用来连接数据库,其中需要一些数据库的参数内容如:登录账号、登录密码。

数据库的地址(这里安静使用的是本地自己安装的数据库),以及需要连接哪一个数据库。

import pymysql
# 连接数据库
count = pymysql.connect(host = 'localhost',     # 数据库地址port = 3306,        # 数据库端口号user='root',        # 数据库账号password='821006052',     # 数据库密码db= 'anjing_test',  # 数据库表名charset = 'gbk'     # 中文乱码
)
# 完成mysql数据库实例化
db = count.cursor()

查找数据

查询内容肯定需要执行sql内容pymysql这里通过execute的方法来执行sql命令并返回一共有多少数据,然后在通过fetchall()来显示sql查询结果的所有内容。

import pymysql
# 连接数据库
count = pymysql.connect(host = 'localhost',     # 数据库地址port = 3306,        # 数据库端口号user='root',        # 数据库账号password='821006052',     # 数据库密码db= 'anjing_test',  # 数据库表名charset = 'gbk'     # 中文乱码
)
# 完成mysql数据库实例化
db = count.cursor()
# sql语句
sql = 'select * from weather'
# 执行sql
a = db.execute(sql)
# 查找所以内容
result = db.fetchall()
print(result)

通过执行发现已经讲我们这个表中的所有数据全部都查询出来了,安静这里只在数据库中添加了2条数据。

pymysql中也提供了只查询一行数据结果的方法:fetchone()。

import pymysql
# 连接数据库
count = pymysql.connect(host = 'localhost',     # 数据库地址port = 3306,        # 数据库端口号user='root',        # 数据库账号password='821006052',     # 数据库密码db= 'anjing_test',  # 数据库表名charset = 'gbk'     # 中文乱码
)
# 完成mysql数据库实例化
db = count.cursor()
# sql语句
sql = 'select * from weather'
# 执行sql
a = db.execute(sql)
# 显示一行查询结果
for i in range(a):result = db.fetchone()print(result)

通过执行可以看出来fetchone()只能每次查询1行数据,然后这里通过for循环的方法让其也展示出来了所有的数据内容。

修改数据

当我们在数据库上进行修改数据后,都会需要点击下保存按钮,修改数据才会进行生效,Python操作数据库这里也是一样的。这里通过commit()的方法来实现的。

import pymysql
# 连接数据库
count = pymysql.connect(host = 'localhost',     # 数据库地址port = 3306,        # 数据库端口号user='root',        # 数据库账号password='821006052',     # 数据库密码db= 'anjing_test',  # 数据库表名charset = 'gbk'     # 中文乱码
)
# 完成mysql数据库实例化
db = count.cursor()
# sql语句
sql = 'update weather set city= "郑州" where id =1 '
# 执行sql
a = db.execute(sql)
count.commit()

通过执行上述代码,查看进行查看数据库数据发现已经将上海更改为了郑州,说明我们的修改操作已经成功了。

删除数据

删除数据操作完成后,也需要通过commit来进行保存:

import pymysql
# 连接数据库
count = pymysql.connect(host = 'localhost',     # 数据库地址port = 3306,        # 数据库端口号user='root',        # 数据库账号password='821006052',     # 数据库密码db= 'anjing_test',  # 数据库表名charset = 'gbk'     # 中文乱码
)
# 完成mysql数据库实例化
db = count.cursor()
# sql删除语句
sql = 'Delete from weather  where city="郑州" '
# 执行sql
a = db.execute(sql)
count.commit()

通过执行后,查看数据库结果,发现已经将郑州这条数据删除了。

新增数据

增删改查就剩下一个新增数据,新增数据和上述内容基本上都是一直的,我们只需要写sql语句,然后在通过commit进行保存即刻。

import pymysql
# 连接数据库
count = pymysql.connect(host = 'localhost',     # 数据库地址port = 3306,        # 数据库端口号user='root',        # 数据库账号password='821006052',     # 数据库密码db= 'anjing_test',  # 数据库表名charset = 'gbk'     # 中文乱码
)
# 完成mysql数据库实例化
db = count.cursor()
# sql新增语句
sql = 'INSERT INTO weather VALUES ("上海","331eab8f3481f37868378fcdc76cb7cd",1)'
# 执行sql
a = db.execute(sql)
count.commit()

通过执行完成后,可以看到我们的数据库中已经新增一条数据了。

接口实战

上述内容简单的介绍了如何通过Python连接数据库,并如何进行对数据增删改查。接下来安静通过读取数据库的数据来完成接口实战(本文的接口内容来自聚合数据,需要的可以自行申请)。


这里通过requests库来模拟请求接口,通过读取数据库数据来进行传入接口参数中。

import pymysql
import requests
# 连接数据库
count = pymysql.connect(host = 'localhost',     # 数据库地址port = 3306,        # 数据库端口号user='root',        # 数据库账号password='821006052',     # 数据库密码db= 'anjing_test',  # 数据库表名charset = 'gbk'     # 中文乱码
)
# 完成mysql数据库实例化
db = count.cursor()
# sql语句
sql = 'select * from weather'
# 执行sql
a = db.execute(sql)
# 获取其中一条数据
result = db.fetchone()
# 接口请求参数内容
data = {'city':result[0],'key':result[1]
}
# url地址
url = 'http://apis.juhe.cn/simpleWeather/query'
# 模拟post请求
r = requests.post(url,data=data)
print(r.text)

通过执行后发现,接口的请求结果已经返回出来了。

总结

上述文章中简单的介绍了如何通过Python连接数据,以及对数据的增删改查,也通过了一个小小的接口案例来实现了读取数据内容,然后传入接口参数中。

这里肯定很多人会想,那么我们的测试数据可以通过数据库的形式进行保存了。

当我们接口自动化时候,我们可以通过sql语句创建一些测试数据,通过读取数据的方法将数据传入接口中,当接口测试完成后,在进行删除本次测试数据内容。

当然安静这是简单的说思路,具体的实践还要根据公司项目进行设计。好了,我是安静,感谢大家的阅读,希望对您有所帮助。

最后: 大家可以去我博客首页看下侧边栏! 进去有许多资料共享!资料都是面试时面试官必问的知识点,也包括了很多测试行业常见知识,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。


好文推荐

转行面试,跳槽面试,软件测试人员都必须知道的这几种面试技巧!

面试经:一线城市搬砖!又面软件测试岗,5000就知足了…

面试官:工作三年,还来面初级测试?恐怕你的软件测试工程师的头衔要加双引号…

什么样的人适合从事软件测试工作?

那个准点下班的人,比我先升职了…

测试岗反复跳槽,跳着跳着就跳没了…

Python操作数据库完成接口测试相关推荐

  1. python怎么调用navicat_Navicat使用与python操作数据库

    一.Navicat使用 1.测试+链接数据库,新建库 2.新建表,新增字段+类型+约束 3.设计表:外键 4.新建查询 5.建立表模型 二.python操作数据库 pymysql使用步骤: 1.与数据 ...

  2. Python操作数据库之 MySQL

    Python操作数据库之MySQL 一.安装Python-MySQLdb模块 Python-MySQLdb是一个操作数据库的模块,Python 通过它对 mysql 数据实现各种操作. 如果要源码安装 ...

  3. Python 操作数据库(1)

    在关系数据库中,数据库表是一系列二维数组的集合,用来代表和储存数据对象之间的关系.它由纵向的列和横向的行组成,例如一个有关作者信息的名为 authors 的表中,每个列包含的是所有作者的某个特定类型的 ...

  4. 表操作,数据操作,单表查询,python操作数据库

    1.表操作 创建 create table 删除 drop table 查看表结构 desc 表/show create table 表 修改 alter table 表名 rename 新表名 al ...

  5. python 操作数据库的常用SQL命令

    这俩天在学习PYTHON操作数据库的知识.其实基本SQL命令是与以前学习的MYSQL命令一致,只是增加了一些PYTHON语句. 1,安装pymysql,并导入. import pymysql 2,因为 ...

  6. Python学习笔记:使用Python操作数据库

    Python学习笔记:使用Python操作数据库 一.数据库编程接口 为了对数据库进行统一的操作,大多数语言都提供了简单的.标准化的数据库接口(API).在Python Database API 2. ...

  7. mybatisplus 操作另一个数据库的数据_实例分析:python操作数据库项目

    本文根据一个项目实例,记录分享一下python将数据库的内容提取显示到程序界面的过程及相关设置,探索python操作数据库的用法.主要分享内容:1.显示数据库内容.2.修改数据库内容.3.表格控件指定 ...

  8. 五、使用Python操作数据库

    (六)使用Python操作数据 程序运行时,数据是在内存中.当程序终止时,通常需将数据保存在磁盘上.为了便于程序保存和读取数据,并能直接通过条件快速查询到指定数据,数据库(Database)这种专门用 ...

  9. Python学习笔记(3):Python操作数据库

    安装MySQLdb 默认情况下Python中并没有安装MySQLdb,因此,在使用之前,我们要先安装MySQLdb. 安装步骤: 首先要下载MySQL-Python,下载地址是https://pypi ...

最新文章

  1. Unity 字典实现
  2. Py之pygame:Python的pygame库的简介、安装、使用方法详细攻略
  3. 追了源码,做了测试,终于实现python的uvicorn日志自行配置
  4. 基于VHDL语言的数字秒表实现
  5. ASP.NET Core 运行原理剖析
  6. php 导出txt 缩进,indent - 缩进文本
  7. Javascript 正则表达式校验数字
  8. zend studio7 在 ubuntu9.10 中按钮失效只能用回车解决办法
  9. 加载本地文件为String类型
  10. Unity —Spine动画
  11. 58同城溢价私有化,互联网“前浪”躲不过“七年之痒”?
  12. psim扰动观察法编程c语言,基于PSIM的新型扰动观察法的MPPT仿真研究
  13. libreelec投屏_在LibreELEC上安装Entware
  14. java中innerhtml_js中innerHTML与innerText的用法与区别 | 学步园
  15. 在Unity顶部显示手机状态栏(iOS/Android)
  16. win10 无法识别x64dbg 插件
  17. 公司中常见的项目类型
  18. pytorch2-gym
  19. ThinkPHP中的getLastSql函数---获取上次执行的SQL语句
  20. 2019上海ICPC H.Tree Partition

热门文章

  1. 一级计算机技术,《一级考试大参考》自动化技术、计算机技术.pdf
  2. 匿名函数php作用,深入理解PHP中的匿名函数
  3. gittrack_Git 分支跟踪详解(remote branch tracking)
  4. Java多线程详解(基本概念)
  5. python字典示例简单代码_python学习笔记:字典的使用示例详解
  6. docker的文件流处理_迁移到微服务与DevOps,微服务和Docker容器的全面实用指南
  7. c access mysql数据库_基于C#的Access MsSQL MySQL 三种数据库访问演示(含源文件Demo)...
  8. QTP的飞机登录描述性编程
  9. 《Hadoop MapReduce实战手册》一1.10 使用MapReduce监控UI
  10. 微信小程序调查报告(二)-账号注册篇