黑马程序员——接口测试——day06——PyMySQL增删改查、工具类封装、ihrm删除接口

本文主要是介绍黑马程序员——接口测试——day06——PyMySQL增删改查、工具类封装、ihrm删除接口,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录:

  1. 数据库操作应用场景
  2. PyMySQL操作数据库
    1. 安装PyMySQL
    2. 操作步骤
    3. 事务的概念
    4. PyMySQL连接数据库
    5. PyMySQL操作数据库
      1. SQL语法回顾
      2. 数据库查询
        1. 查询操作流程
        2. cursor游标
        3. 常用方法
        4. 案例
        5. 异常捕获
      3. 数据库UID
        1. 更新操作流程
        2. 案例
  3. 数据库工具类封装
    1. 封装的目的
    2. 设计数据库工具类
    3. 实现类方法

1.数据库操作应用场景

  • 校验测试数据
    • 接口发送请求后明确会对数据库中的某个字段进行修改,但,响应结果中无该字段数据时。
      • 如: ihrm删除员工接口。is_delete字段,没有在响应结果中出现!需要借助数据库校验!
  • 构造测试数据
    • 测试数据使用一次就失效。
      • 如: ihrm 添加员工接口,使用的手机号!
    • 测试前,无法保证测试数据是否存在。
      • 如: ihrm查询员工接口,使用的员工id

2.PyMySQL操作数据库

安装PyMySQL

操作步骤

  1. 导包 import pymysql
  2. 创建连接。conn = pymysql.connect(host,port, user, password, database, charset)
  3. 获取游标。cursor = conn.cursor()
  4. 执行SQL。cursor.execute("sql语句”)
    1. 查询语句(select)
      1. 处理结果集(提取数据fetch*)
    2. 增删改语句(insert、update、delete)
      1. 成功:提交事务conn.commit()
      2. 失败:回滚事务conn.rollback()
  5. 关闭游标。cursor.close()
  6. 关闭连接。conn.close() 
事务的概念
  • 事务,是关系型数据库(mysql)特有的概念。
  • 事务,可以看做一个虚拟的容器,在容器中存放一系列的数据库操作,看做一个整体。内部的所有操作,要么都一次性全部成功,只要有一个失败,就全部失败!

 

  • 事务操作:只有2种情况
    • 提交:conn.commit()
    • 回滚: conn.rollback() 
PyMySQL连接数据库

建立连接方法

入门案例

  • 查询数据库,获取MySQL服务器版本信息 

PyMySQL操作数据库
SQL语法回顾

数据库查询 
查询操作流程

cursor游标

常用方法
  • fetchone():从结果集中,提取一行。
  • fetchmany(size):从结果集中,提取size行。
  • fetchall():提取所有结果集。
  • 属性rownumber:可以设置游标位置。 
案例
  • 查询t_book表,获取第一条数据
  • 查询t_book表,获取前两条数据
  • 查询t_book表,获取全部数据
  • 查询t_book表,获取第3条和第4条数据 

 

异常捕获

 

 

数据库UID
更新操作流程 

案例
  • 单独实现如下操作:①:新增一条图书数据(id:5 title:西游记pub_date:1986-01-01) ②:把图书名称为'西游记′的阅读量加一③:删除名称为'西游记的图书

插入数据: 

 

修改数据:

 

删除数据:

 

3.数据库工具类封装

封装的目的
  • 将常用的数据库操作,封装到一个方法。后续再操作数据库时,通过调用该方法来实现。
  • 提高代码的复用性!
设计数据库工具类

实现类方法

获取、关闭连接

查询一条记录

增删改数据

完整封装代码实现

 

这篇关于黑马程序员——接口测试——day06——PyMySQL增删改查、工具类封装、ihrm删除接口的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/778797

相关文章

SpringBoot实现不同接口指定上传文件大小的具体步骤

《SpringBoot实现不同接口指定上传文件大小的具体步骤》:本文主要介绍在SpringBoot中通过自定义注解、AOP拦截和配置文件实现不同接口上传文件大小限制的方法,强调需设置全局阈值远大于... 目录一  springboot实现不同接口指定文件大小1.1 思路说明1.2 工程启动说明二 具体实施2

Python实战之SEO优化自动化工具开发指南

《Python实战之SEO优化自动化工具开发指南》在数字化营销时代,搜索引擎优化(SEO)已成为网站获取流量的重要手段,本文将带您使用Python开发一套完整的SEO自动化工具,需要的可以了解下... 目录前言项目概述技术栈选择核心模块实现1. 关键词研究模块2. 网站技术seo检测模块3. 内容优化分析模

Go语言连接MySQL数据库执行基本的增删改查

《Go语言连接MySQL数据库执行基本的增删改查》在后端开发中,MySQL是最常用的关系型数据库之一,本文主要为大家详细介绍了如何使用Go连接MySQL数据库并执行基本的增删改查吧... 目录Go语言连接mysql数据库准备工作安装 MySQL 驱动代码实现运行结果注意事项Go语言执行基本的增删改查准备工作

MySQL 数据库表操作完全指南:创建、读取、更新与删除实战

《MySQL数据库表操作完全指南:创建、读取、更新与删除实战》本文系统讲解MySQL表的增删查改(CURD)操作,涵盖创建、更新、查询、删除及插入查询结果,也是贯穿各类项目开发全流程的基础数据交互原... 目录mysql系列前言一、Create(创建)并插入数据1.1 单行数据 + 全列插入1.2 多行数据

Python用Flask封装API及调用详解

《Python用Flask封装API及调用详解》本文介绍Flask的优势(轻量、灵活、易扩展),对比GET/POST表单/JSON请求方式,涵盖错误处理、开发建议及生产环境部署注意事项... 目录一、Flask的优势一、基础设置二、GET请求方式服务端代码客户端调用三、POST表单方式服务端代码客户端调用四

mybatisplus的逻辑删除过程

《mybatisplus的逻辑删除过程》:本文主要介绍mybatisplus的逻辑删除过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录myBATisplus的逻辑删除1、在配置文件中添加逻辑删除的字段2、在实体类上加上@TableLogic3、业务层正常删除即

MySQL慢查询工具的使用小结

《MySQL慢查询工具的使用小结》使用MySQL的慢查询工具可以帮助开发者识别和优化性能不佳的SQL查询,本文就来介绍一下MySQL的慢查询工具,具有一定的参考价值,感兴趣的可以了解一下... 目录一、启用慢查询日志1.1 编辑mysql配置文件1.2 重启MySQL服务二、配置动态参数(可选)三、分析慢查

MybatisPlus中removeById删除数据库未变解决方案

《MybatisPlus中removeById删除数据库未变解决方案》MyBatisPlus中,removeById需实体类标注@TableId注解以识别数据库主键,若字段名不一致,应通过value属... 目录MyBATisPlus中removeBypythonId删除数据库未变removeById(Se

基于Redisson实现分布式系统下的接口限流

《基于Redisson实现分布式系统下的接口限流》在高并发场景下,接口限流是保障系统稳定性的重要手段,本文将介绍利用Redisson结合Redis实现分布式环境下的接口限流,具有一定的参考价值,感兴趣... 目录分布式限流的核心挑战基于 Redisson 的分布式限流设计思路实现步骤引入依赖定义限流注解实现

基于Python实现进阶版PDF合并/拆分工具

《基于Python实现进阶版PDF合并/拆分工具》在数字化时代,PDF文件已成为日常工作和学习中不可或缺的一部分,本文将详细介绍一款简单易用的PDF工具,帮助用户轻松完成PDF文件的合并与拆分操作... 目录工具概述环境准备界面说明合并PDF文件拆分PDF文件高级技巧常见问题完整源代码总结在数字化时代,PD