JDBC Request

JDBC Request(与数据库交互的请求类型)——用于向数据库发送一个jdbc请求(请求实际上就是sql语句)并获取返回数据库执行SQL结果数据进行操作。
  它经常需要和JDBC Connection Configuration配置原件(JDBC Connection Configuration:即为配置数据库连接的相关属性,如连接名、密码等)一起使用。

一、使用前准备工作

1.数据库环境要求

准备好能够连接的mysql数据库,且数据库中有正常访问的表信息
数据库开通了其它机器远程访问的权限
命令为:
grant all privileges on . to [email protected]"%" identified by ‘mysqlpwd’;(mysqlusername设置MYSQL用户名,MYSQL的密码mysqlpwd)
flush privileges;

2.Jmeter添加需要的驱动jar包

方式1:使用不同的数据库,我们需要引入不同的jar包。直接将jar包(MYSQLmysql-connector-java-5.1.37.jar包的复制到jmeter的lib目录)
mysql数据库:无需引入其他数据库驱动jar包。
sql server 数据库:下载sqljdbc4.jar 放到 jmeter根目录的lib目录下(??待验证)
oracle数据库:将oracle数据的安装目录下面的\product\10.2.0\db_1\jdbc\lib\ojdbc14.jar 放到jmeter根目录下的lib目录下(??待验证)
方式2:通过Test Plan(不常用)
假如我们不使用将jar复制到jmeter的lib目录的方式,我们还可以使用Jmeter的Test Plan引入相应的jar包,如下面引入mysql数据库的jar包
Jmeter-JDBC学习

二、配置JDBC Connection Configuration

重要参数说明
Variable Name:数据库连接池的名称,我们可以有多个jdbc connection configuration,每个可以起个不同的名称,在jdbc request中可以通过这个名称选择合适的连接池进行使用。
Database URL:数据库url,jdbc:mysql://主机ip或者机器名称:mysql监听的端口号/数据库名称, 如:jdbc:mysql://localhost:3306/test
JDBC Driver class:JDBC驱动
username:数据库登陆的用户名
passwrod:数据库登陆的密码
Jmeter-JDBC学习
不同数据库具体的填写方式,可以参考下面的表格:
Database Driver class Database URL
MySQL com.mysql.jdbc.Driver jdbc:mysql://host:port/{dbname}
PostgreSQL org.postgresql.Driver jdbc:postgresql:{dbname}
Oracle oracle.jdbc.driver.OracleDriver jdbc:oracle:thin:user/[email protected]//host:port/service
Ingres (2006) ingres.jdbc.IngresDriver jdbc:ingres://host:port/db[;attr=value]
MSSQL com.microsoft.sqlserver.jdbc.SQLServerDriver或者net.sourceforge.jtds.jdbc.Driver jdbc:sqlserver://IP:1433;databaseName=DBname或者jdbc:jtds:sqlserver://localhost:1433/"+“library”

三、配置JDBC Request

Jmeter-JDBC学习
Variable Name:数据库连接池的名字,需要与JDBC Connection Configuration的Variable Name Bound Pool名字保持一致
Query:填写的sql语句
Parameter valus:参数值
Parameter types:参数类型,可参考:Javadoc for java.sql.Types
Variable names:保存sql语句返回结果的变量名
Result variable name:创建一个对象变量,保存所有返回的结果
Query timeout:查询超时时间
Handle result set:定义如何处理由callable statements语句返回的结果

四、JDBC Request参数化

(1)SQL中引用变量方式
Jmeter-JDBC学习
(2)SQL中占用符,并传递参数值和参数类型

Jmeter-JDBC学习

五、Variables names 参数使用方法

jmeter官网给的解释是:如果给这个参数设置了值,它会保存sql语句返回的数据和返回数据的总行数。假如,sql语句返回5行,2列,且variables names设置为username,pwd,那么如下变量会被设置为:
SQL语句为:select LOGIN_ID,PASSWORD from XXX where =1
  username_#=2 (总行数)
  username_1=第1列, 第1行
  username_2=第1列, 第2行
  username_3=第1列, 第3行
  username_4=第1列, 第4行
  username_5=第1列, 第5行
  pwd_#=2 (总行数)
  pwd_1=第2列, 第1行
  pwd_2=第2列, 第2行
  pwd_3=第2列, 第3行
  pwd_4=第2列, 第4行
  pwd_5=第2列, 第5行

KaTeX parse error: Expected group after '_' at position 2: {_̲_V(username_{__counter(False,)})}
KaTeX parse error: Expected group after '_' at position 2: {_̲_V(pwd_{__counter(False,)})}

相关文章:

  • 2021-07-03
  • 2021-08-15
  • 2022-01-02
  • 2021-09-19
  • 2021-09-02
猜你喜欢
  • 2021-08-04
  • 2021-07-28
  • 2021-06-26
  • 2021-10-13
  • 2022-01-20
  • 2021-04-10
相关资源
相似解决方案