zoukankan      html  css  js  c++  java
  • Jmeter的JDBC请求执行多条SQL语句

    注:有mysqlconnector/j 3.1.1以上版本才支持执行多条sql语句

    1.     下载jdbc驱动
    为了连接Mysql数据库,还需要有个jdbc驱动:mysql-connector-java-5.1.41-bin.jar

    CSDN下载地址: https://download.csdn.net/download/glongljl/10398325

    2.     添加jdbc驱动
     打开JMeter,点击测试计划,点击“浏览...”按钮,将你的JDBC驱动添加进来。

    3.     添加jdbc connection配置
    添加一个线程组,右键点击“线程组”,在下面添加一个“JDBC Connection Configuration“,Database URL为MySQL的连接串,如果要执行多条SQL语句,后面还要添加“?allowMultiQueries=true”

    JDBC Driver Class是本机的jdbc驱动路径。Mysql数据库,默认com.mysql.jdbc.Driver,不同数据库有不同默认值

    4.     添加一个JDBC Request
    右键点击“线程组”,在下面添加一个“JDBCrequest”,如果要执行多条SQL语句,Quer Type一定要选择 Callable statement,使用Callablestatement时,一次可以包含多个SQL,如上图所示。

    这里需要注意的是VariableName Bound to Pool同JDBC CONNECTION的一致

    ·        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语句返回的结果

    注: Variables names参数使用方法:

      Jmeter官网给的解释是:如果给这个参数设置了值,它会保存sql语句返回的数据和返回数据的总行数。假如,sql语句返回2行,3列,且variables names设置为A,,C,那么如下变量会被设置为:

      A_#=2 (总行数)

      A_1=第1列, 第1行

      A_2=第1列, 第2行

      C_#=2 (总行数)

      C_1=第3列, 第1行

      C_2=第3列, 第2行

    如果返回结果为0,那么A_#和C_#会被设置为0,其它变量不会设置值。

    如果第一次返回6行数据,第二次只返回3行数据,那么第一次那多的3行数据变量会被清除。

    可以使用${A_#}、${A_1}...来获取相应的值

  • 相关阅读:
    mysql root密码重置
    fetch跨域问题
    HTML5触摸事件(touchstart、touchmove和touchend)
    react-router-dom
    清理网站缓存
    从零开始学java (标识符,关键字,基本数据类型)
    从零开始学java ( 初始java)
    入职一年心得
    guava 函数式编程三兄弟
    java读取各种类型文件
  • 原文地址:https://www.cnblogs.com/xxsl/p/11633737.html
Copyright © 2011-2022 走看看