问题描述
SELECTLOGDATE logdate, <dynamic> <isEqual property="isMember" compareValue="true" close=","> NAME name </isEqual> </dynamic> AGE ageFROM t 如题,在select中使用动态查询,isMember是Boolean类型的,结果就是isMember为true的时候还是选不到name这一列.这样写有错吗?
解决方案
加一个remapResults="true",具体作用请谷歌,主要是因为缓存了结果集获取的逻辑过程,第一次查过以后,ibatis一直认为只有两个字段,根本不会考虑去取第3个字段另外你可以去掉dynamic这个标签,直接用里面的isequal就行了
解决方案二:
lz是想isMember为true的数据吧?该成SELECT LOGDATE logdate, NAME name, AGE agefrom t<dynamic> <isNotNull property="isMember" pretend="where"> isMember = true </isNotNull></dynamic>
解决方案三:
什么数据库,为什么字段名要写两遍?
时间: 2024-12-02 17:10:59