ibatis 使用遇到的问题1

<sql id="whereStatement">
<dynamic prepend="where">
    is_deleted=0
<isNotEmpty prepend="and" property="id"
removeFirstPrepend="true">id=#id#</isNotEmpty>
<isNotEmpty prepend="and" property="searchWord"
removeFirstPrepend="true">search_word like concat('%',#searchWord#,'%')</isNotEmpty>
<isNotEmpty prepend="and" property="showWord"
removeFirstPrepend="true">show_word like concat('%',#showWord#,'%')</isNotEmpty>
<isNotEmpty prepend="and" property="state"
removeFirstPrepend="true">state=#state#</isNotEmpty>
<isNotEmpty prepend="and" property="entryType"
removeFirstPrepend="true">entry_type=#entryType#</isNotEmpty>
<isNotEmpty prepend="and" property="startTime"
removeFirstPrepend="true"><![CDATA[ gmt_end >= #startTime# ]]></isNotEmpty>
<isNotEmpty prepend="and" property="endTime"
removeFirstPrepend="true"><![CDATA[ gmt_start <= #endTime# ]]></isNotEmpty>
</dynamic>
</sql>


ibatis的xml中,
<dynamic>  </dynamic>里面千万不能有   is_deleted=0 这种固定的条件,不然会报如下错误:
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'state = 0    and entry_type = 1    and location = 1    and gmt_end >= '2017-04-2' at line 1
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
at com.mysql.jdbc.Util.getInstance(Util.java:386)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1052)
研究了好久。。。
还有,ibatis中的sql文件中,一定能加 “ ”空格的地方一定加上,不然不知道什么时候就会因为一个空格报错 找不到原因

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值