在perl中返回存储过程中的多个输出DBI返回额外的0值

时间:2017-02-02 13:21:47

标签: perl stored-procedures dbi

我的存储过程返回一个输出参数,并且它还有很多类似下面的打印语句

Create Proc
myParam out

begin
  select 'this is a log statement'
  select @myParam = 0
end

我在使用DBI的perl脚本中为Sybase服务器调用上述内容。我不知道如何打印select print语句以及myParam的值?

这是我做过的事情

$sth = $fdadbh->prepare($db_query) or die "Could not prepare statement: ". $fdadbh->errstr;
$sth->execute() or die "Couldnt execute statement: ".$sth->errstr;
do {
      while($row = $sth->fetchrow_arrayref) {
         print join("\t\t", @$row), "\n";
      }
  } while ($sth->{syb_more_results});

我得到的输出是     这是一个日志声明     0     0

如果我删除行select @myParam = 0并再次运行,我会

this is a log statement
0
-1

如何删除另外的0。此外,有没有办法在变量中cpturing outputParam(除了遍历和保持最后一个值)

0 个答案:

没有答案