iBATIS教程之如何获得output参数值

最近有人问我怎么在存储过程中获取output的参数值,由于我最近没有用iBATIS.NET,所以就从文档中找到的param的XML,也就没有在意,但后来有人说调不通,今天早上又收到一份留言,所以我早上作了测试!也出现获取不到数据的问题,但***还是解决了!我的测试环境是sqlserver2005/vs2005/ibatis.net2.0

如下:

Procedure:

 
 
 
  1. create proc sp_output  
  2. (  
  3.     @testParam    int    output  
  4. )  
  5. as  
  6. begin  
  7.     set @testParam = 10 
  8. end  
  9. go 

XML:

 
 
 
  1. ﹤parameterMaps﹥  
  2.   ﹤parameterMap id="select-params2" class="Hashtable"﹥  
  3.     ﹤parameter property="testParam" column="testParam" direction="Output" /﹥  
  4.   ﹤/parameterMap﹥  
  5. ﹤/parameterMaps﹥  
  6.  
  7. ﹤statements﹥  
  8.  
  9.   ﹤procedure id="GetAccountViaSP2" parameterMap="select-params2"﹥  
  10.     sp_output  
  11.   ﹤/procedure﹥  
  12. ﹤/statements﹥ 

Code:

 
 
 
  1. int testid = 0;  
  2. Hashtable map = new Hashtable();  
  3. map.Add("testParam", testid);  
  4.  
  5. mapper.Insert("GetAccountViaSP2", map);  
  6.  
  7. Console.WriteLine(map["testParam"].ToString()); 

注意,在parammap定义的时候需要设置class=Hashtable,用class=int,就获取不到!

iBATIS教程之如何获得output参数值就向你介绍到这里,希望对你有所帮助。

【编辑推荐】

  1. iBATIS中添加DAO的配置浅析
  2. iBATIS DAO framework初体验
  3. iBATIS教程之快速入门浅析
  4. iBATIS教程之like语句的写法浅析
  5. iBATIS.NET多数据库支持浅析
THE END