IBatisNet使用方法(五)动态SQL

 

动态sql就可以解决相关的多表链接查询以及模糊查询的问题

    <select id="SelectEemployee" parameterClass="string" resultMap = "MemberMap">

         select CardNo,Name from Member

         <dynamic prepend="WHERE">

<isParameterPresent>

User_ID = #value#

</isParameterPresent>

</dynamic>

</select>

动态sql写法

<dynamic prepend ="WHERE">           表示动态sql开始,如果关联表 prepend ="AND",可以为""

    <关键字

         <!关键字可以为以下                 相关含义

         <isEqual>                                                         参数等于值

                 <isNotEqual>                                              参数不等于值

                 <isGreaterThan>                                         参数大于值

                 <isGreaterEqual>                                         参数大于等于值

                 <isLessEqual>                                             参数小于等于值

                 <isPropertyAvailable>                                   参数被使用

                 <isNotPropertyAvailable>                              参数没有使用

                 <isNull>                                                     参数 is null

                 <isNotNull>                                                参数 is not null

                 <isEmpty>                                                 参数为空

                 <isNotEmpty>                                            参数不为空

                 <isParameterPresent>                                  参数类不为NULL

                 <isNotParameterPresent>                             参数类为NULL

-- >

prepend="AND"                        连接关键字

property="UserID"                    参数

compareValue="20">                   值,也可以为属性名来比较

 

1.相关sql ,就是动态sql要添加的条件,比如:

Name =#value# 

2.重复元素,这个属性适合一个集合,比如SQL中的in 后的集合等

<iterate prepend="AND"               连接关键字

property="NameList"         参数

         open="("                    open后的串为开始括号作用“(”

close=")"                   close后的串为结束括号作用“)”

conjunction="OR">           连接方式 AND 或OR,每个元素之间的符号

         Name=#NameList[]#

    </iterate>

    --以上相当与SQL

    And Name = /open   #NameList[0] or/conjunction #NameList[1] or ./close

</关键字>

</dynamic>

基本操作讲解完毕,相信简单的应用已经够大家使用了。如有深入的了解再继续探讨

转载于:https://www.cnblogs.com/Roc_Lee/archive/2009/02/12/1389083.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值