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

MSSQL
MySQL中SQL的单字节注入与宽字节注入
解决MySQL 5数据库连接超时问题
通过事务日志解决SQL Server常见四大故障
将SQL 2000日志迁移到SQL Server 2008
在应用环境中如何构造最优的数据库模式
数据库安全管理的三个经验分享
SQL Server应用程序的高级Sql注入
Oracle数据库与SQL Server数据库镜像对比
讲解SQL Server安装sp4补丁报错的解决方法
SQL Server 2005数据库批量更新解决办法
编写和优化SQL Server的存储过程
从数据行入手保护SQL Server数据安全
SQL Server数据体系和应用程序逻辑详解
网友分享:Oracle数据库开发技术经验浅谈
把你的数据库置于版本控制之下
SQL Server 2005实现数据库缓存依赖
SQL Server数据库管理常用SQL和T-SQL语句
初学者必读:提高SQL执行效率的几点建议
初探MS SQL CE+Codesmith
优化SQLServer数据库服务器内存配置的策略

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 136 ::
收藏到网摘: 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

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

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