Search code examples
hibernatenamed-queryhibernate-native-query

Hibernate: how to set parameters to createNativeQuery?


I am using following query:

public String getAmount(String userId, String companyId) {
    Integer amountList = entityManager.createNativeQuery("SELECT scan.attorney.Get_Amount(?, ?) AS amount FROM DUAL")
                    .setParameter(1, companyId).setParameter(2, userId).getFirstResult();
    return amountList.toString();
}

when getAmount is passed, we also pass userID and company ID but it is not fetching correct value where we run query in database with same values, it is fetching correctly.

Can anyone suggest what is wrong in above native query?


Solution

  • Another way

    String sql = "select * from table where id = ?1;"
    Em.createNativeQuery(sql);
    
    Sql.setParameter(1,id);