<select id="queryInspectList" resultClass="inspectinfo">
select  insp.* FROM inspectinfo1 insp  
       <dynamic prepend=" where ">
<isNotEmpty prepend=" and " property="reflectivity">reflectivity = 80 </isNotEmpty>
</dynamic>         
 </select>我这样写有问题吗?怎么查询出来的结果没有执行where啊<select id="queryInspectList" resultClass="inspectinfo">
     select  insp.* FROM inspectinfo1 insp  where  reflectivity = 80
            
 </select>  这样写就没有问题
是不是<isNotEmpty>我用的不对啊,请高手指点

解决方案 »

  1.   

    <dynamic prepend=" where "></dynamic> 
    改为where 1=1试试
      

  2.   

    <isNotEmpty prepend=" and " property="reflectivity">reflectivity = 80 </isNotEmpty>
    |
    |
    <isNotEmpty property="reflectivity">reflectivity = '80' </isNotEmpty>
    and 去掉、 参数值加引号、
      

  3.   

    不是null的时候你多拼写了个and,2L说的对。
      

  4.   

    <select id="query" resultMap="hotelinfo.Hotelpromotionrelease">
    select * from hpm_hotelpromotionrelease2
    <dynamic prepend="where">
    <isNotEmpty prepend="and" property="id">
    id = #id#
    </isNotEmpty>
      

  5.   

    一般我都是select insp.* FROM inspectinfo1 insp where 1=1
    后面跟着isnotempty。。就省去那个prepend="where"了
      

  6.   

    修改成:
    "<select id="queryInspectList" resultClass="inspectinfo">
         select insp.* FROM inspectinfo1 insp   
      <dynamic prepend=" where ">
        <isNotEmpty prepend=" and " property="reflectivity">
           (insp.reflectivity = 80)    </isNotEmpty>
       </dynamic>   
     </select>"
      

  7.   

    <select id="queryInspectList" resultClass="inspectinfo" >
    你的参数类型呢?最好这样写property="#reflectivity" #reflectivity = 80 
      

  8.   

    把prepend的and去掉,为空格就行了