博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iBatis动态生成列在执行查询时报列名无效
阅读量:4319 次
发布时间:2019-06-06

本文共 468 字,大约阅读时间需要 1 分钟。

 

iBatis会自动缓存每条查询语句的列名映射,所有如果你动态生成列名的话就有可能造成查询列名无效的问题。

下面以G4平台为例简单说明一下:
同一条SQL语句先被queryforpage()调用,SQL语句被拦截套上了分页语法。此时rn列明被缓存。之后你又使用queryforlist()方法执行查询。次数SQL语句不被拦截拼分页语法,此时便报出rn列名无效。解决办法是在SQL语句上加一个属性(remapResults)配置让每次执行都重新映射列名。注:仅在可能被queryforpage()和queryforlist()都调用的SQL语句上加此属性。(以牺牲性能为代价,损耗很小很小)。如下所示:

1<selectid="sql_Sel_Mp_Design"parameterClass="map"resultClass="dto"remapResults="true">

2</select>

转载于:https://www.cnblogs.com/lishoubin/archive/2011/11/22/3211313.html

你可能感兴趣的文章
SpringBoot整合Netty
查看>>
MongoDB数据库的基本操作
查看>>
PAT乙级1014
查看>>
ORACLE wm_concat自定义
查看>>
[Zend PHP5 Cerification] Lectures -- 6. Database and SQL
查看>>
[Drupal] Using the Administrator theme whenever you want.
查看>>
【Hibernate框架】关联映射(一对一关联映射)
查看>>
【算法】大数乘法
查看>>
WPF解析PPT为图片
查看>>
JavaScrict中的断言调试
查看>>
密码服务
查看>>
结构体在内存中的存储
查看>>
冲刺阶段—个人工作总结01
查看>>
基于Python的Webservice开发(二)-如何用Spyne开发Webservice
查看>>
PowerDesigner修改设计图中文字的字体大小等样式
查看>>
Python list和 np.Array 的转换关系
查看>>
jenkins忘记密码如何处理?
查看>>
布尔操作符-逻辑或(||)
查看>>
vim的列编辑操作
查看>>
Linux驱动学习 —— 在/sys下面创建目录示例
查看>>