这段时间用了一下c++ builder ,在调用存储过程的时候遇到了一些问题,问了很多地方都没有找到答案,最后还是靠自己,现在拿出来和大家分享。
示例代码:
storedproc1->params->clear();
storedproc1->params->createparam( ftsmallint, "@m1", ptinput);
storedproc1->params->createparam( ftstring, "@m2", ptoutput);
storedproc1->params->createparam( ftinteger, "@m3", ptoutput);
storedproc1->params->createparam( ftinteger, "@m4", ptoutput);
storedproc1->params->createparam( ftinteger, "@m5", ptoutput);
storedproc1->params->createparam( ftinteger, "result", ptresult);
storedproc1->prepare();
storedproc1->execproc();
问题:调用存储过程的时候总是报错,注意,时在执行storedproc1->execproc()的时候就会报错,其它的地方报的错误的解决方法不再本篇文章中。执行代码报错时的错误信息提示:错误:indicator variable required but not supplied
原因:当在执行的存储过程的时候,如果有一项出项空值的时候,就会发生这样的问题
解决:在存储过程中对产成的空值进行处理,就可以了