fetchrow_array最后返回0

时间:2017-02-03 07:02:40

标签: perl stored-procedures sybase

我从perl

调用sybase存储过程
create  procedure  testprocedure2 as 
begin
  select 'one'
end
GO 

在perl中我使用DBI

do {
      while(my @row = $sth->fetchrow_array()){
            print $row[0]."\n";
      }
  } while ($sth->{syb_more_results});

结果,我得到了

One
0

为什么我最后得到额外的0?

1 个答案:

答案 0 :(得分:3)

基于对网络的快速浏览,我猜测您必须查看$sth->{syb_result_type}并忽略您不感兴趣的结果类型。

阅读DBD::Sybase(文档$sth->{syb_result_type})和this(稍微描述结果类型)的文档。

我认为0CS_STATUS_RESULT,即存储过程的结果。我认为我发现确认零表示成功。