Ibatisnet Oracle存储过程

   最近一段时间要将原有的ORM换成ibatisnet,ibatisnet这个上手速度应该还是比较快的,很多文章都讲了如何配置,如何调试,已经很完整了。但是大部分文章都是讲述配置的,而且都是简单的SQL语句。关于函数调用的,找了半天也没有找到合适的方法。最后在stackoverflow上看到一个类似的方法,就是将函数转变为存储过程。下面简单举个存储过程例子,供大家参考。

1、XML文件

  <procedure id="PRO_GETTRADESN" parameterMap="GetTradesn">
    PRO_GETTRADESN
  </procedure>

    <parameterMap id="GetTradesn">
      <parameter property="tradesn" column="tradesn" direction="Output" dbType="VARCHAR2" size ="20" />
    </parameterMap>

   需要在XML文件中添加以上两段,前者是声明存储过程,后者是表示传入的参数类型。如果需要返回值 注意添加这个属性direction="Output"即可。


2、调用程序

            ISqlMapper mapper = Mapper.Instance(); //得到ISqlMapper实例
            string tradesn = "";
            Hashtable ht = new Hashtable();
            ht.Add("tradesn", tradesn); // Output
            mapper.QueryForList("PRO_GETTRADESN", ht);  

        注意需要传入一个 hashtable 即可

      

    最后说一下,ibatisnet 中文的文档相当少,而且只要稍微配置错一点,可能就无法得到想要的结果。另外就是如果谁有调用数据库函数并能获取到返回值的方法,麻烦将方法分享给我,以便我学习一下。谢谢。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值