从未映射的表中选择值

时间:2013-08-19 09:18:11

标签: java hibernate jpa

是否可以从未映射的表中选择一个值?

这是一个例子:

这是我的薪水表:

enter image description here

我想加载WARE的价格,如'ALLE'和desstination'AUT'。但是,我只需要“wert”值,而不是整个对象。我也不需要在我的项目中映射这个表,我只需要获取值。

我试过以下:

TypedQuery<Double> q = em.createQuery(
                "SELECT wert FROM TVTARIF WHERE destination like '?1' and ware like '?2'",Double.class)
                .setParameter(1, transportZertifikat.getTransportGebiet())
                .setParameter(2, "ALLE");
System.out.println(q.getSingleResult());

但我得到以下错误:

 org.hibernate.hql.internal.ast.QuerySyntaxException: TVTARIF is not mapped [SELECT wert FROM TVTARIF WHERE destination like '?1' and ware like '?2']

1 个答案:

答案 0 :(得分:2)

尝试使用createNativeQuery而不是createQuery。它接收一个纯SQL查询,并且不必映射表。