Postman连接mysql数据库
在接口测试过程中,我们有时候需要通过查询数据库数据,来判断接口执行的结果是否正确,来校验数据的准确性。
但是 Postman 并没有提供数据库的查询功能。
好在,有一款基于 node.js 的工具 Xmysql可以将数据库的表数据转换成 Restful API 接口,返回 JOSN 格式的结果数据。
一、安装node.js
此处不赘述,网上有很多教程。一路next即可,最后配置环境变量path。
官网:
http://nodejs.cn/download/
二、安装xMySQL,连接数据库
1、安装xMySQL:
在node.js 环境安装配置好后,执行
npm install -g xmysql
安装xMySQL 。
2、启动服务,连接数据库
为了方便测试,可以自己创建一个数据库、表。
1、新建连接信息
2、创建数据库
create DATABASE 数据库名称;3、创建表
create table isTester(id INT(10) not null unique primary key,
uname VARCHAR(20) not null,
sex VARCHAR(4),
birth year,
department VARCHAR(20),
address VARCHAR(50));
CREATE TABLE grade (id INT(10) NOT NULL UNIQUE PRIMARY KEY AUTO_INCREMENT ,
stu_id INT(10) NOT NULL ,
c_name VARCHAR(20) ,
grade INT(10),
FOREIGN KEY ( stu_id ) REFERENCES istester (id));4、插入表数据
insert into istester (id, uname, sex) value (1, "张三", "1"),(2, "里斯", "2"),(3, "王五", "1"),(4, "李六", "2");
insert into grade(id, stu_id, c_name, grade) value (1, 1, "语文", 90),(2, 2, "数学", 100),(3, 3, "英语", 20),(4, 1, "英语", 90);
进入xMySQL的安装目录运行命令,连接数据库。
xmysql -h host_name -u user_name -p user_password -rip-d database_name
说明:-r ip 指定访问的 API 的 IP,这样可以跨服务器访问;如果不加,就只能使用 localhost 和 127.0.0.1 进行本机访问。
可以看到xMySQL默认端口是3000,所以直接在url中输入
http://localhost:3000/api/表名
,就可以查询到表的数据了
三、在postman中通过Xmysql API对数据库进行增删查改操作
注意:
1、在Postman中执行SQL语句时,步骤2的cmd窗口和MySQL都不可以关闭。
2、以下的id指的是所操作表的主键。
1、查询表数据
1.1、查询表的所有数据
请求方式:get
请求url: http://localhost:3000/api/表名
1.2、带条件查询
请求方式:get
请求url:http://localhost:3000/api/表名?_where=(条件,eq,值)
1.3、分组查询
通过 groupby 接口进行分组查询,通过内置的参数_fields指定分组的字段。
请求方式:get
请求url:http://localhost:3000/api/表名/groupby?_fields=分组的字段名
2、向数据库表中插入数据
请求方式:post
请求url:http://localhost:3000/api/表名
body传参:json格式的参数值(参考查询返回的参数)
3、修改表数据
请求方式:patch
请求url:http://localhost:3000/api/表名/id
body传参:json格式的参数值
4、删除表的数据
4.1、删除单条数据
请求方式:delete
删除单条数据:http://localhost:3000/api/表名/id
4.2、删除多条数据
请求方式:delete
请求url:http://localhost:3000/api/表名/bulk?_ids=值1,值2,值3
5、统计表的行数
请求方式:get
请求url:http://localhost:3000/api/表名/count
6、根据外键查询
请求方式:get
请求url:http://localhost:3000/api/父表名/父表id/子表名
版权归原作者 简单快乐_wsh 所有, 如有侵权,请联系我们删除。