Hibernate执行原生SQL别名导致的一个Bug
来源:互联网 发布:苏州相城淘宝运营培训 编辑:程序博客网 时间:2024/05/16 18:28
原生sql:
select
A.ID_ ,
A.NAME_,
B.NAME_
from jbpm_task A
inner join jbpm_processdefinition B on(A.PROCESSDEFINITION_=B.ID_)
order by B.NAME_
这个项目错误很隐蔽所以写出来警醒自己,这个sql在外围执行很成功,但是NAME出现了重名,导致查询出来的列段覆盖。
SQL独立查询:
结果:
1发文CAAAForSendDoc
2主任阅示CAAAForSendDoc
3领导审核CAAAForSendDoc
4办理CAAAForSendDoc
但是使用Hibernate查询
打印结果是:
1发文 发文
2主任阅示 主任阅示
3领导审核 领导审核
4办理 办理
修改如下:
<sql-query name="GetTasksDef">
<return-scalar column="ID" type="long"/>
<return-scalar column="TASKNAME" type="string"/>
<return-scalar column="WFNAME" type="string"/>
<![CDATA[
select
A.ID_ as ID,
A.NAME_ as TASKNAME,
B.NAME_ as WFNAME
from jbpm_task A
inner join jbpm_processdefinition B on(A.PROCESSDEFINITION_=B.ID_)
order by B.NAME_
]]>
</sql-query>
使用Hibernate别名调用即可正确。
- Hibernate执行原生SQL别名导致的一个Bug
- hibernate执行原生sql的别名问题
- Hibernate 原生sql的执行
- hibernate执行原生sql
- Hibernate 执行原生sql
- hibernate执行原生SQL
- Hibernate 执行原生SQL
- Hibernate执行原生sql
- 使用hibernate执行原生的sql
- Hibernate执行原生的sql语句
- Hibernate的bug之别名
- Hibernate执行原生SQL查询
- Hibernate直接执行原生SQL
- [转载]hibernate执行原生sql
- Hibernate SQLQuery执行原生SQL
- Hibernate SQLQuery执行原生SQL
- java---j2ee---hibernate执行原生Sql语句的方法
- Spring的HibernateDaoSupport及用hibernate执行原生SQL
- 嵌入式开发要编的第一个程序——测试各种数据类型字节长度
- ServletRequest和ServletResponse(1)
- 什么是 IE ?
- c#下载文件
- 使用ADO的诸多常见疑难杂症
- Hibernate执行原生SQL别名导致的一个Bug
- MFC下文件打开和保存操作
- 当年明月
- .NET实现DataSet转Excel
- 计数器
- 处理mysql代码编译问题
- 如何进行Web应用的安全测试和输入校验
- 人类的心灵——赢的力量
- VC运行时库