使用存储过程时一个错误的解决方法
2008-03-08 11:05:56 来源:WEB开发网核心提示:这段时间用了一下C++ Builder ,在调用存储过程的时候碰到了一些问题,使用存储过程时一个错误的解决方法,问了很多地方都没有找到答案,最后还是靠自己,执行代码报错时的错误信息提示:错误:indicator variable required but not supplied原因:当在执行的存储过程的时候,假如有一
这段时间用了一下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 原因:当在执行的存储过程的时候,假如有一项出项空值的时候,就会发生这样的问题 解决:在存储过程中对产成的空值进行处理,就可以了
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 原因:当在执行的存储过程的时候,假如有一项出项空值的时候,就会发生这样的问题 解决:在存储过程中对产成的空值进行处理,就可以了
赞助商链接