一、jdbc是什么
- jdbc:(JavaDataBaseConnectivity)是一种用于执行SQL语句的JAVA API。
- 调用数据库时,需要使用jar + 数据库信息
- jmeter是用java开发,可以直接执行java代码
二、依赖
- 1.获取jar包?
- maven仓库,搜索数据库
- 找到需要的版本,下载
- 2.把下载的jar包,放到jmeter的lib文件夹中
- 3.重启jmeter,jmeter就可以写jdbc请求了
三、写脚本
1.添加 配置元件 > JDBC Connection Configuration,
JDBC Connection Configuration元件用于配置关系型数据库,不可用于非关系型数据库。
2.填写数据库的:ip、port、dbname、user、password、pool、字符集 、驱动类…
-
variable name for created pool: 自定义一个线程池变量名
- 规则: 字母、数字、下划线
-
database URL: 填写数据库的ip、端口、dbname, 但是,不同的数据库URL地址写法不一样
- mysql: jdbc:mysql://serverip:port/dbname
- MYSQL数据库默认端口:3306
- mysql: jdbc:mysql://serverip:port/dbname
-
jdbc driver class: 不同的数据库,这个驱动class不一样,需要去选择。
- mysql: com.mysql.jdbc.Driver 只适用于mysql5版本;
- mysql8是需要手写:com.mysql.cj.jdbc.Driver
-
用户名/密码
2.添加jdbc request数据库请求
- 线程组右键添加—取样器—JDBC Request
- jdbc request:
- 连接池: 一定要与JDBC Connection Configuration中配置的连接池名称要一致
- sql query:
jmeter中,写sql可以不写分号。 不要想着在一个sql query中写多个sql,要写多个sql就用多个jdbc request。 默认不支持一个sql query中写多个sql
- select statement
- update statement
- prepared select statement
- prepared update statement
带有 prepared开头,是脚本中,可以带有参数
-
sql中带参数的写法: 两种
- 直接在sql中,进行变量引用 ${var} 但是不推荐
- 用 ? 变量占位符 ====推荐
- variable names:变量名
- result variable name: