同样的sql语句在数据库中能查出结果,但是在java项目中,查不出来

时间:2021-05-31 08:43:28
数据库语句:select
    d."INST_DATE",
    d."PAN",
    d."CARD_ACCP_TERM_ID",   
    d."TERM_SSN",
    d."TRANS_TYPE"

    from 
    TBL_N_TXN
    d
    left join    
   
   TBL_MCHT_BASE_INF
    m
    on m.MAPPING_MCHNTCDTWO=d.CARD_ACCP_ID
   
    where
          CARD_ACCP_TERM_ID='47568349'
        
      and
        
          TERM_SSN='000005'
        
   
      and
        
           CARD_ACCP_ID = '111111111111111'
        
    
    and TRANS_TYPE='P' and RESP_CODE='00' and REVSAL_FLAG='0'   


java语句:select
    d."INST_DATE",
    d."PAN",
    d."CARD_ACCP_TERM_ID",   
    d."TERM_SSN",
    d."TRANS_TYPE"

    from 
     <include refid="tableNameN"></include>
    d
    left join    
   
    <include refid="tableNameMchnt"></include>
    m
    on m.MAPPING_MCHNTCDTWO=d.CARD_ACCP_ID
   
    where 1=1
    
        <if test="pd.CARD_ACCP_TERM_ID!= null and pd.CARD_ACCP_TERM_ID != ''">
and
(
CARD_ACCP_TERM_ID=#{pd.CARD_ACCP_TERM_ID}
)
</if>
<if test="pd.TERM_SSN!= null and pd.TERM_SSN != ''">
and
(
TERM_SSN=#{pd.TERM_SSN}
)
</if>
<if test="pd.CARD_ACCP_ID!= null and pd.CARD_ACCP_ID != ''">
and
(
 CARD_ACCP_ID = #{pd.CARD_ACCP_ID}
)
</if>
and TRANS_TYPE='P' and RESP_CODE='00' and REVSAL_FLAG='0'  

10 个解决方案

#1


求大神解答啊 

#2


在页面上  在执行SQL 前的最后一部将SQL 打印出来看看 一定是页面拼接出现了一些问题 

这些问题很可能是单引号  双引号之类的差别 

#3


改好了,将配置文件sql语句中的#{}改为${}

#4


数据库的字段名和实体类中的字段名不一致,可以用resultmap

#5


不应该是双引号吧,应该是TAB键上面的那个·

#6


还有种低级错误,就是在数据库中insert into 以后没有commit!哪个傻逼这样干过的请举手

#7


该回复于2017-09-08 15:40:05被管理员删除

#8


吐槽一下,你条件后面为什么不用别名。

#9


<if test="">  java 里还有这种高级操作? 同样的sql语句在数据库中能查出结果,但是在java项目中,查不出来

#10


该回复于2017-10-13 11:30:49被管理员删除

#1


求大神解答啊 

#2


在页面上  在执行SQL 前的最后一部将SQL 打印出来看看 一定是页面拼接出现了一些问题 

这些问题很可能是单引号  双引号之类的差别 

#3


改好了,将配置文件sql语句中的#{}改为${}

#4


数据库的字段名和实体类中的字段名不一致,可以用resultmap

#5


不应该是双引号吧,应该是TAB键上面的那个·

#6


还有种低级错误,就是在数据库中insert into 以后没有commit!哪个傻逼这样干过的请举手

#7


该回复于2017-09-08 15:40:05被管理员删除

#8


吐槽一下,你条件后面为什么不用别名。

#9


<if test="">  java 里还有这种高级操作? 同样的sql语句在数据库中能查出结果,但是在java项目中,查不出来

#10


该回复于2017-10-13 11:30:49被管理员删除