当两个表具有相同的列名时,跳过NonUniqueDiscoveredSqlAliasException

时间:2019-06-24 10:28:59

标签: hibernate jpa

我现有的应用程序正在使用版本3.6.10的HibernateDAOSupport和hibernateTemplate。 当我有如下所示的本机查询时,则在当前系统上可以正常使用。

select a.name, b.name from a inner join b on a.bid=b.id

现在,我将应用程序升级到JPA,因此抛出错误: NonUniqueDiscoveredSqlAliasException

我可以通过将查询更改为以下一项来解决此错误:

select a.name as aname, b.name from a inner join b on a.bid=b.id

但是问题是我的应用程序很大,要找出这些查询将很乏味。想知道是否存在可以跳过此错误的设置。

1 个答案:

答案 0 :(得分:0)

根据文档,恐怕无法实现

https://docs.jboss.org/hibernate/orm/5.4/userguide/html_single/Hibernate_User_Guide.html#sql-multi-entity-query

  

在以下查询中需要列别名注入   否则抛出NonUniqueDiscoveredSqlAliasException。