当前位置: 首页 > 图文教程 > 数据库 > MSSQL > 使用存储过程时一个错误的解决方法

MSSQL
SQL Server数据库搭建农村信息化的方案
建立合理的索引提高SQL Server的性能
如何利用SQL Server 2005中的模板参数
浅析SQL Server三大算法的I/O成本
SQL Server与Oracle数据库在安全性上的异同
解析SQL Server与ASP互操作的时间处理
sql server 中删除默认约束的通用sql脚本
实用技巧:优化SQL Server数据库查询方法
SQL Server的BUILTIN\Administrators用户
史上最简单的方法复制或迁移Oracle数据库
数据库自动化技术弥补数据库DBA短缺难题
教你怎样在Oracle数据库中高速导出/导入
怎样在SQL Server中去除表中不可见字符
怎样使用 SQL Server 数据库嵌套子查询
细化解析:转换 SQL数据库时的疑难问题
细化解析:SQL Server 2000 的各种版本
轻松掌握 SQL Server 2000数据库的构架
带你轻松了解 SQL Server数据库的组成
解决SQL Server日志文件损坏严重的问题
检测你的SQL Server是否有特洛伊木马

MSSQL 中的 使用存储过程时一个错误的解决方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 116 ::
收藏到网摘: n/a

 

jackxm(原作)

这段时间用了一下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

原因:当在执行的存储过程的时候,如果有一项出项空值的时候,就会发生这样的问题

解决:在存储过程中对产成的空值进行处理,就可以了