WebAPI接口测试数据库操作
通常我们是不建议直接查看数据库内容来检查功能的,但是在没有外部接口或者图形界面验证的情况下,只能通过查询数据库来验证。
比如我们手工需要从界面上添加一万条数据,估计要花好几天时间,显然不能手工去操作。那么有一种方法就是:直接操作数据库,把数据插入到表中。
通常我们的应用程序和数据库服务都不在一台机器上,所以需要通过网络请求来访问。
服务端:
数据库服务进程:负责网络通讯,传递数据信息,将数据库访问命令传递给DB。
DB:对应具体的数据库,通常表现形式为磁盘上的数据库文件,内部存储数据库信息。
客户端:
APP:访问数据库的应用程序,
Driver:负责联通APP与数据库服务之间的联通,相当于沟通桥梁。
Python代码操作数据库:
pymysql库是在python3.x的版中用于连接mysql服务器的一个库;MySQLdb库则是在python2中使用。
在windows平台下,直接 pip install PyMySQL
先可以用第三方工具连接到数据库,或者要求开发告知连接数据库的一些信息。比如:主机名或IP、用户名、密码、端口等信息。
这样就可以连接数据库了:
① 首先导入包 import pymysql
① 创建一个连接对象 db = pymysql.connect(host='127.0.0.1', # 主机名或IP地址
port=3306, # 端口 默认一般为3306
user='xxxx', # 用户名
password='xxxx', # 密码
db='xxxx') # 数据库名
② 使用cursor()创建一个游标对象 c = db.cursor()
③ 增删改查数据库内容 ---- 通过游标来执行sql语句
c.execute("select * from sq_course") # 查询语句
c.execute("insert into sq_course(name, `desc`, display_idx )") values('数学', ‘数学课’, 10) # 增加语句
c.execute("update sq_course set name = '语文' where name = '数学' ") # 修改语句
c.execute("delete from sq_course where name = '数学'") # 删除语句
注意:所有对数据库修改的动作,必须commit提交才会生效
rollback() 回滚当前事务 与conmit相反 可以理解成撤回的意思
④ 取出查询到的数据可以用以下方法:
c.fetchall() # 查询所有的数据
c.fetchone() # 查询一条数据
c.fetchmany(3) # 查询多条数据,参数是多少条
⑤ 关闭数据库连接 db.close
代码实例:

WebAPI接口测试数据库操作的更多相关文章
- jmeter接口测试 -- 数据库操作(mysql)
一.操作类型 语句类型 1.查询语句 2.非查询语句 1)update 2)insert into 3)删除 二.把返回值的化为变量 1.执行语句,并引用变量 2.查看结果
- net core Webapi基础工程搭建(六)——数据库操作_Part 2
目录 前言 开始 使用 小结 前言 昨天是写着写着发现,时间不早了,已经养成了晚上下班抽时间看看能写点儿啥的习惯(貌似),今天实在是不想让昨天没做完的事情影响,所以又坐下,沉下心(周末了),开始把数据 ...
- net core Webapi基础工程搭建(六)——数据库操作_Part 1
目录 前言 SqlSugar Service层 BaseService(基类) 小结 前言 后端开发最常打交道的就是数据库了(静态网站靠边),上一篇net core Webapi基础工程搭建(五)-- ...
- C#进阶系列——WebApi 接口测试工具:WebApiTestClient
前言:这两天在整WebApi的服务,由于调用方是Android客户端,Android开发人员也不懂C#语法,API里面的接口也不能直接给他们看,没办法,只有整个详细一点的文档呗.由于接口个数有点多,每 ...
- Java通过JDBC 进行MySQL数据库操作
转自: http://blog.csdn.net/tobetheender/article/details/52772157 Java通过JDBC 进行MySQL数据库操作 原创 2016年10月10 ...
- 【转载】WebApi 接口测试工具:WebApiTestClient
正文 前言:这两天在整WebApi的服务,由于调用方是Android客户端,Android开发人员也不懂C#语法,API里面的接口也不能直接给他们看,没办法,只有整个详细一点的文档呗.由于接口个数有点 ...
- 谈反应式编程在服务端中的应用,数据库操作优化,提速 Upsert
反应式编程在客户端编程当中的应用相当广泛,而当前在服务端中的应用相对被提及较少.本篇将介绍如何在服务端编程中应用响应时编程来改进数据库操作的性能. 开篇就是结论 接续上一篇<谈反应式编程在服务端 ...
- 如何在高并发环境下设计出无锁的数据库操作(Java版本)
一个在线2k的游戏,每秒钟并发都吓死人.传统的hibernate直接插库基本上是不可行的.我就一步步推导出一个无锁的数据库操作. 1. 并发中如何无锁. 一个很简单的思路,把并发转化成为单线程.Jav ...
- 【知识必备】ezSQL,最好用的数据库操作类,让php操作sql更简单~
最近用php做了点小东东,用上了ezSQL,感觉真的很ez,所以拿来跟大家分享一下~ ezSQL是一个非常好用的PHP数据库操作类.著名的开源博客WordPress的数据库操作就使用了ezSQL的My ...
随机推荐
- attach()与detach()的使用
attach()与detach()需要配对使用,如果使用了attach而未使用detach,再次使用attach时,会有"对象被屏蔽"的问题,如下:
- Django-settings可插拔实现
Setting可插拔 django暴露了一个可以给用户自定义配置的文件,优先使用用户配置的信息,而且必须要大写才有效 文件目录 --about_settings --default --conf -- ...
- python模块IO
Python之模块IO io概叙 io模块提供了python用于处理各种类型I/O的主要工具,主要有三种类型的I/O:文本I/O,二进制I/O和原始I/O:这些都是通用类型,各种后备存储可使用其中的每 ...
- solr 的安装和配置
Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口.用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引:也可以通过Http Get操 ...
- 浅析vue混入(mixin)
vue中的混入,可以在一定程度上提高代码的复用性.通俗来说,混入类似于“继承”,当前组件对象继承于组件对象,一般情况下遵循“就近原则”.但是与继承不同的是,继承一般都跟随着属性的重写与合并,混入在不同 ...
- Python基础之第三方库gevent安装
安装gevent库: 想要安装gevent库,我们需要确定pip版本: 使用 pip3 list: 我们可以发现pip版本为19.3.1,如果你们的pip版本不是最新版可以使用命令python -m ...
- 洛谷 题解 2165 [AHOI2009]飞行棋
本蒟蒻又来发题解了, 看到这个题目,本蒟蒻直接开始推公式.. 嗯,可以通过弧长,推出弦长(l = 2 * r * cos(90 * l / (r * Π)); 然后对比各条弦长的平方和与直径的平方. ...
- 报错 Please make sure you have the correct access rights and the repository exists (git 添加ssh密钥 )
1.设置Git的user name和email $ git config --global user.name "wubaiwan" $ git config --global u ...
- [TimLinux] Python Django myblog启动
1. myblog介绍 自己给自己定的一个学习项目,用于: 使用学到的Python Web开发技术,框架django 使用学到的CSS技术,实现前端功能 使用学到的Axure工具,画出前端页面功能草图 ...
- ACM-ICPC 2018 焦作赛区网络预赛 B题 Mathematical Curse
A prince of the Science Continent was imprisoned in a castle because of his contempt for mathematics ...