1、配置
打开官方下载网址https://dev.mysql.com/downloads/connector/j/
,根据自己的数据库版本、类型和操作系统选择
![](https://img.haomeiwen.com/i18551834/dcd05d51a64d6b67.png)
下载mysql-connector-java-8.0.19.jar包,存放于jmeter的\lib\ext下,如我的存放路径:F:\apache-jmeter-5.2.1\lib\ext,重启jmeter,这样的操作使jdbc默认配置成功,只需要调用即可。
2、添加-配置元件-JDBC Connection Configuration
![](https://img.haomeiwen.com/i18551834/a88b6477d69acc3a.png)
Variable Name for created pool:数据库连接池的名称,我们可以有多个JDBC Connection Configuration,每个可以取不同的名称,在jdbc request中可以通过对应的名称选择对应的连接池进行使用。
-Database URL:数据库url,jdbc:mysql://主机ip或者机器名称:mysql监听的端口号/数据库名称?编码格式, 如:jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8,其中?useUnicode=true&characterEncoding=utf8为配置的编码格式
•JDBC Driver class:选择JDBC驱动
•username:数据库登陆的用户名
•passwrod:数据库登陆的密码
Some examples for databases and their parameters are given below.
MySQL
Driver class
com.mysql.jdbc.Driver
Database URL
jdbc:mysql://host[:port]/dbname
PostgreSQL
Driver class
org.postgresql.Driver
Database URL
jdbc:postgresql:{dbname}
Oracle
Driver class
oracle.jdbc.OracleDriver
Database URL
jdbc:oracle:thin:@//host:port/service OR jdbc:oracle:thin:@(description=(address=(host={mc-name})(protocol=tcp)(port={port-no}))(connect_data=(sid={sid})))
Ingress (2006)
Driver class
ingres.jdbc.IngresDriver
Database URL
jdbc:ingres://host:port/db[;attr=value]
Microsoft SQL Server (MS JDBC driver)
Driver class
com.microsoft.sqlserver.jdbc.SQLServerDriver
Database URL
jdbc:sqlserver://host:port;DatabaseName=dbname
3、添加-取样器-JDBC Request
![](https://img.haomeiwen.com/i18551834/d59269f04dc8642f.png)
•Variable Name Bound to pool:数据库连接池的名称,必须与对应JDBC Connection Configuration中的Variable Name for created pool名称一致
•Parameter values:以逗号分隔的参数值列表。使用 ] NULL [ 表示NULL参数。
•Parameter types:参数类型(e.g. INTEGER, DATE, VARCHAR, DOUBLE)
•Variable Names:以逗号分隔的变量名称列表,用于保存Select语句,Prepared Select语句或Callable Statement返回的值。请注意,与CallableStatement一起使用时,变量列表的顺序必须与调用返回的OUT参数的顺序相同。如果变量名少于OUT参数,则在线程上下文变量中应存储与提供的变量名一样多的结果。如果变量名称多于OUT参数,则其他变量将被忽略
•Result Variable Name:结果变量名称,创建一个对象变量,保存所有返回的结果
•Handle ResultSet:定义如何处理callable statements语句返回的ResultSet
4、sql语句参数化
一种方法如上图,直接在sql语句中用${变量名}的方式添加变量;
二是在sql语句中使用英文?作为占位符,并传递参数值和参数类型,其中Query Type(SQL语句类型)要选择对应的Prepared select statement或Prepared update statement,Prepared statement用于绑定变量重用执行计划,对于多次执行的SQL语句,Prepared statement无疑是最好的类型(生成执行计划极为消耗资源,两种实现速度差距可能成百上千倍),statement用于为一条SQL语句生成执行计划(这也是为什么select statement只会执行第一条select语句的原因),如果只执行一次SQL语句,statement是最好的类型。
![](https://img.haomeiwen.com/i18551834/046dd375003e56f6.png)
传递的参数值是可以是常量,也可以是变量,如上图。多个变量使用“,” 分隔。
网友评论