September 27 2013

ora 24338

昨天下午写了一个package里面有一个sp提供了一个查询接口给c++那边去调。

结果我自己做test是可以通过的。然后c++那边调用时发生了 24338的错误  查看一下描述:

[oracle@param ~]$ oerr ora 24338
24338, 00000, “statement handle not executed”
// *Cause:  A fetch or describe was attempted before executing a
//          statement handle.
// *Action: Execute a statement and then fetch or describe the data.

ORA-24338: 未执行语句句柄
这个问题主要出现在使用数据库游标的时候.当执行存储过程,返回的游标没有打开时,可能会报这个错

 

当时检查了一下代码 发现只有一个Open 然后自己进行测试也是好的 为什么c++去调就不可以呢 然后我把所有的代码都注掉 发现c++去调就没有问题了 于是怀疑是不是参数的问题

在检查c++代码的时候发现调用的时候把一个o的in是number的传过来的时候定义 的是string 然后改了之后就没有这个问题了 第一次遇到这样奇葩的问题 报的错也那么不明显。记录一下 免得以后再出现

 

 

 

 



Copyright 2019. All rights reserved.

Posted 2013年9月27日 by ucjmh in category "oracle

Leave a Reply

Your email address will not be published. Required fields are marked *