【问题标题】:Testing a stored procedure in JMeter - format error在 JMeter 中测试存储过程 - 格式错误
【发布时间】:2021-12-24 21:20:48
【问题描述】:

首先,对不起我的英语不好。

我是新来的,这是我的第一篇文章。

我正在尝试在 JMeter 中测试 Oracle 存储过程。我已经成功完成了对DB的配置,但是当我调用存储过程并发送参数时,出现格式错误,显然,JMeter在我配置时没有发送参数。

SP-JMETER

这是错误:

ERROR

如您所见,参数到达存储过程,并对其进行处理,但显然,我没有正确发送它们。

这样我在PL/SQL Developer中执行存储过程:

SP-PLSQLDEV

如果有人知道可能发生的事情,我将不胜感激。 如果您需要更多信息,请告诉我。

谢谢

这是代码的第 219 行(发生错误的地方):

w_trans_date: = substr (w_in, 1, 8); / * left (w_in, 8); */

【问题讨论】:

  • edit 包含minimal reproducible example 的问题:您用于将程序调用为文本(不是图像)的代码;您正在使用的参数的详细信息(同样,作为文本);以及您的过程的 CREATE PROCEDURECREATE PACKAGE 语句。如果我们看不到代码,我们就无法告诉您问题所在。
  • 你试过your_first_parameter,NULL,NULL而不是your_first_parameter,]NULL[,]NULL[吗?
  • 另外,您已将其声明为 INOUT VARCHAR 而在 SQL Developer 中它只是一个 IN 参数吗?
  • 抱歉,无法发布 SP 代码 :(。这就是我在 JMETER 中调用存储过程的方式:调用 INGRES.atm01atd(p_in => ?, p_out => ?, p_error => ?)

标签: oracle stored-procedures jmeter qa


【解决方案1】:

我通过将以下行添加到 JDBC CONNECTION CONFIGURATION 的 INIT SQL STATEMENTS 解决了这个问题:

alter session set nls_date_format = 'dd / mm / yyyy'

【讨论】:

    【解决方案2】:

    尝试 w_trans_date: = substr('28372873822327', 1, 8); 如果此代码可以正常工作,请查看 w_in 变量中的值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-16
      • 1970-01-01
      相关资源
      最近更新 更多