带有列名(和表名)的JPA createNativeQuery作为参数

时间:2017-03-15 15:39:31

标签: java jpa java-ee

可以在JPA中将列名(或表名)设置为参数,如:

   Query query = em.createNativeQuery(  "select ? , ? from ?");  
   query.setParameter(1, title); 
   query.setParameter(2, value); 
   query.setParameter(3, tableName); 

运行此类代码时出现SQL异常! 此代码用于从运行时生成的表中获取数据。它使用字符串连接来完成,但是如何在查询上设置参数呢?

1 个答案:

答案 0 :(得分:1)

在此方法或任何其他明智的预准备语句实现中都不可能。绑定参数的全部要点是将代码和数据分开,并且列是标识符,因此是“代码”。