快生活 - 生活常识大全

实现语句的参数化


  在对做压力时,我们需要对sql语句做一个参数化的处理。
  自带的函数可以获取参数值,函数如下:
  _Random:产生随机数
  _threadNum:线程号最为参数值
  _CSVRead:从csv文件中读取,可以指定读取的列
  _StringFromFile:从文件中读取,一次读取一行,文件的格式必须是.dat文件
  以下面的select语句为例,对dfhruefhrhg对参数化处理,使每次执行时读取不同值
  selectb.sql_textfromhr.aaa,hr.bbbwherea.sql_id=b.sql_idanda.sql_id=‘dfhruefhrhg’
  步骤1:准备一个csv文件存放参数值,hr.aa表中sql_id的值最为参数
  SQL>spoole:sql_id.sql
  SQL>selectsql_idfromhr.aagroupbysql_id;
  SQL>spooloff;
  将sql_id.sql文件整理后重命名为sql_id.csv
  步骤2:添加一个用户自定义变量
  1.按ctrl+F快捷键弹出函数助手,选择_CSVRead函数
  其中CSVfiletogetvaluesfrom填写csv文件的绝对路劲
  CSV文件列号填写读取的csv文件的列数,列数从0开始
  填写完之后点击生成
  2.添加一个用户自定义变量:线程组–>添加–>配置原件–>用户自定义变量
  名称取为sql_id,变量值为上一步产生的函数字符串
  步骤3:在jdbc请求中将dfhruefhrhg替换为产生的函数字符串${__CSVRead(Esql_id.csv,0)}
  selectb.sql_textfromhr.aaa,hr.bbbwherea.sql_id=b.sql_idanda.sql_id=‘${__CSVRead(Esql_id.csv,0)}"
  变量值为${__CSVRead(Esql_id.csv,0)}
  变量类型为varchar
  步骤4:添加"察看结果树",点击运行
网站目录投稿:谷翠